sc.exe создать sc.exe create
Создает подраздел и записи для службы в реестре и в базе данных диспетчера управления службами. Creates a subkey and entries for a service in the registry and in the Service Control Manager database.
Синтаксис Syntax
Параметры Parameters
Параметр Parameter | Описание Description |
---|---|
Указывает имя удаленного сервера, на котором расположена служба. Specifies the name of the remote server on which the service is located. Имя должно использовать формат UNC (например, \ MyServer). The name must use the Universal Naming Convention (UNC) format (for example, \myserver). Чтобы запустить SC.exe локально, не используйте этот параметр. To run SC.exe locally, don’t use this parameter. | |
Указывает имя службы, возвращенное операцией жеткэйнаме . Specifies the service name returned by the getkeyname operation. | |
type= | Указывает тип службы. Specifies the service type. Эти способы могут быть следующими: The options include:
|
start= | Указывает тип запуска для службы. Specifies the start type for the service. Эти способы могут быть следующими: The options include:
|
error= | Указывает серьезность ошибки, если служба не запускается при запуске компьютера. Specifies the severity of the error if the service fails to start when the computer is started. Эти способы могут быть следующими: The options include:
|
binpath= | Указывает путь к двоичному файлу службы. Specifies a path to the service binary file. Значение по умолчанию для BinPath =, и эта строка должна быть указана. There is no default for binpath=, and this string must be supplied. |
group= | Указывает имя группы, членом которой является эта служба. Specifies the name of the group of which this service is a member. Список групп хранится в реестре в подразделе хклм\систем\куррентконтролсет\контрол\сервицеграупордер . The list of groups is stored in the registry, in the HKLM\System\CurrentControlSet\Control\ServiceGroupOrder subkey. По умолчанию используется значение NULL. The default value is null. |
tag= | Указывает, следует ли получить TagID из вызова CreateService. Specifies whether or not to obtain a TagID from the CreateService call. Теги используются только для драйверов загрузки и запуска системы. Tags are used only for boot-start and system-start drivers. |
depend= | Указывает имена служб или групп, которые должны быть запущены перед этой службой. Specifies the names of services or groups that must start before this service. Имена разделяются косой чертой (/). The names are separated by forward slashes (/). |
obj= <| > | Указывает имя учетной записи, в которой будет выполняться служба, или задает имя объекта драйвера Windows, в котором будет выполняться драйвер. Specifies a name of an account in which a service will run, or specifies a name of the Windows driver object in which the driver will run. Значение по умолчанию — LocalSystem. The default setting is LocalSystem. |
displayname= | Указывает понятное имя для идентификации службы в программах пользовательского интерфейса. Specifies a friendly name for identifying the service in user interface programs. Например, имя подраздела одной конкретной службы — wuauserv, которое имеет более понятное отображаемое имя автоматическое обновление. For example, the subkey name of one particular service is wuauserv, which has a more friendly display name of Automatic Updates. |
password= |
Комментарии Remarks
Каждый параметр командной строки (параметр) должен включать знак равенства как часть имени параметра. Each command-line option (parameter) must include the equal sign as part of the option name.
Между параметром и его значением требуется пробел (например, Type = an). A space is required between an option and its value (for example, type= own. Если пространство не указано, операция завершается ошибкой. If the space is omitted, the operation fails.
Примеры Examples
Чтобы создать и зарегистрировать новый двоичный путь для службы невсервице , введите: To create and register a new binary path for the NewService service, type:
Практическое руководство. Создание служб Windows How to: Create Windows Services
При создании службы можно использовать шаблон проекта Visual Studio, который называется Служба Windows. When you create a service, you can use a Visual Studio project template called Windows Service. Этот шаблон автоматически выполняет основную часть работы, ссылаясь на необходимые классы и пространства имен, устанавливая наследование от базового класса для служб и переопределяя некоторые методы, которые вы обычно хотите переопределять. This template automatically does much of the work for you by referencing the appropriate classes and namespaces, setting up the inheritance from the base class for services, and overriding several of the methods you’re likely to want to override.
Шаблон проекта «Службы Windows» в экспресс-выпуске Visual Studio отсутствует. The Windows Services project template is not available in the Express edition of Visual Studio.
Для создания функциональной службы необходимо выполнить, как минимум, следующее: At a minimum, to create a functional service you must:
Задайте свойство ServiceName. Set the ServiceName property.
Создайте установщики, необходимые для приложения службы. Create the necessary installers for your service application.
Переопределите и задайте код для методов OnStart и OnStop для настройки режимов поведения службы. Override and specify code for the OnStart and OnStop methods to customize the ways in which your service behaves.
Создание приложения службы Windows To create a Windows Service application
Создайте проект Служба Windows. Create a Windows Service project.
Инструкции по созданию службы без использования шаблона см. в разделе Практический пример. Создание служб программным способом. For instructions on writing a service without using the template, see How to: Write Services Programmatically.
В окне Свойства задайте для своей службы свойство ServiceName. In the Properties window, set the ServiceName property for your service.
Значение ServiceName свойства всегда должно соответствовать имени, указанному в классах установщика. The value of the ServiceName property must always match the name recorded in the installer classes. При изменении этого свойства необходимо также обновить свойство ServiceName классов установщика. If you change this property, you must update the ServiceName property of installer classes as well.
Установите любые из следующих свойств для определения режима работы службы. Set any of the following properties to determine how your service will function.
Свойство. Property | Параметр Setting |
---|---|
CanStop | True , чтобы указать, что служба может принимать запросы на останов работы; false для предотвращения останова службы. True to indicate that the service will accept requests to stop running; false to prevent the service from being stopped. |
CanShutdown | True , чтобы указать, что служба хочет принимать уведомления о выключении компьютера, на котором она работает, позволяя ему вызывать процедуру OnShutdown. True to indicate that the service wants to receive notification when the computer on which it lives shuts down, enabling it to call the OnShutdown procedure. |
CanPauseAndContinue | True , чтобы указать, что служба может принимать запросы на приостановку или возобновление выполнения; false для предотвращения приостановки и возобновления работы службы. True to indicate that the service will accept requests to pause or to resume running; false to prevent the service from being paused and resumed. |
CanHandlePowerEvent | True , чтобы указать, что служба может обрабатывать уведомления об изменениях состояния питания компьютера; false , чтобы не сообщать службе об этих изменениях. True to indicate that the service can handle notification of changes to the computer’s power status; false to prevent the service from being notified of these changes. |
AutoLog | True для внесения информационных записей в журнал событий приложения, когда служба выполняет некоторое действие; false для отключения этой функции. True to write informational entries to the Application event log when your service performs an action; false to disable this functionality. Дополнительные сведения см. в разделе Практическое руководство. Запись сведений о службах в журнал. For more information, see How to: Log Information About Services. Примечание. По умолчанию свойство AutoLog имеет значение true . Note: By default, AutoLog is set to true . |
Когда CanStop или CanPauseAndContinue имеют значение false , диспетчер служб будет отключать пункты меню, отвечающие за остановку, приостановку или возобновление работы службы. When CanStop or CanPauseAndContinue are set to false , the Service Control Manager will disable the corresponding menu options to stop, pause, or continue the service.
Откройте редактор кода и введите данные для выполнения операций для процедур OnStart и OnStop. Access the Code Editor and fill in the processing you want for the OnStart and OnStop procedures.
Переопределите все прочие методы, для которых необходимо определить функциональные возможности. Override any other methods for which you want to define functionality.
Добавить установщики, необходимые для приложения службы. Add the necessary installers for your service application. Дополнительные сведения см. в разделе Практическое руководство. Добавление установщиков в приложение-службу. For more information, see How to: Add Installers to Your Service Application.
Скомпилируйте проект, выбрав в меню Сборка пункт Собрать решение. Build your project by selecting Build Solution from the Build menu.
Не нажимайте клавишу F5 для запуска проекта — таким способом нельзя запустить проект службы. Do not press F5 to run your project — you cannot run a service project in this way.
Установите службу. Install the service. Дополнительные сведения см. в разделе Практическое руководство. Установка и удаление служб. For more information, see How to: Install and Uninstall Services.