sc.exe сбой из-за 1639

#command-line #windows-services #windows-server-2008-r2

#командная строка #windows-services #windows-server-2008-r2

Вопрос:

Мы настраиваем новую среду, и я пишу пакетные файлы для использования на нескольких машинах в кластере. Согласованность — мой друг. 🙂

Командная строка просто перечисляет параметры и устанавливает errorlevel=1639.

     d:servicesWFCContainerStatus>sc config ContainerStatusService start=auto
DESCRIPTION:
        Modifies a service entry in the registry and Service Database.
USAGE:
        sc <server> config [service name] <option1> <option2>...

OPTIONS:
NOTE: The option name includes the equal sign.
      A space is required between the equal sign and the value.
 type= <own|share|interact|kernel|filesys|rec|adapt>
 start= <boot|system|auto|demand|disabled|delayed-auto>
 error= <normal|severe|critical|ignore>
 binPath= <BinaryPathName>
 group= <LoadOrderGroup>
 tag= <yes|no>
 depend= <Dependencies(separated by / (forward slash))>
 obj= <AccountName|ObjectName>
 DisplayName= <display name>
 password= <password>

d:servicesWFCContainerStatus>echo %errorlevel%
1639
  

Поиск кода ошибки был, мягко говоря, непростым делом. Попытка net helpmsg была выполнена как usefil.

 d:servicesWFCContainerStatus>net helpmsg 1639

Invalid command line argument. Consult the Windows Installer SDK for detailed command line help.
  

Я уверен, что это что-то тривиальное, что я делаю неправильно и что я просто не вижу этого.

У кого-нибудь есть какие-либо идеи по этому поводу?

Ответ №1:

По-видимому, мне нужно научиться читать, потому что мой ответ был прямо передо мной.

 d:servicesWFCContainerStatus>sc config ContainerStatusService start= auto
[SC] ChangeServiceConfig SUCCESS
  

Как сказано в тексте справки, «Между знаком равенства и значением требуется пробел». Добавьте пробел, и все заработает.

Комментарии:

1. Сумасшедший! Просто столкнись с этим сам. Кажется, Windows 10 и Server 2019 (возможно, 2016) не требуют места, но Windows 7 требует (предполагая, что Server 2008 также). Хотя сейчас они не поддерживаются, они по-прежнему действительны для расширенных обновлений безопасности для пользователей Pro / корпоративного уровня, которые платят (до 2023 года).