Как в windows 7 создать службу
sc.exe создать | Microsoft Docs
- Чтение занимает 3 мин
В этой статье
Создает подраздел и записи для службы в реестре и в базе данных диспетчера управления службами.Creates a subkey and entries for a service in the registry and in the Service Control Manager database.
СинтаксисSyntax
sc.exe [<servername>] create [<servicename>] [type= {own | share | kernel | filesys | rec | interact type= {own | share}}] [start= {boot | system | auto | demand | disabled | delayed-auto}] [error= {normal | severe | critical | ignore}] [binpath= <binarypathname>] [group= <loadordergroup>] [tag= {yes | no}] [depend= <dependencies>] [obj= {<accountname> | <objectname>}] [displayname= <displayname>] [password= <password>]
ПараметрыParameters
ПараметрParameter | ОписаниеDescription |
---|---|
<servername> | Указывает имя удаленного сервера, на котором расположена служба.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. |
<servicename> | Указывает имя службы, возвращенное операцией жеткэйнаме .Specifies the service name returned by the getkeyname operation. |
type= {own | share | kernel | filesys | rec | interact type= {own | share}} | Указывает тип службы.Specifies the service type. Эти способы могут быть следующими:The options include:
|
start= {boot | system | auto | demand | disabled | delayed-auto} | Указывает тип запуска для службы.Specifies the start type for the service. Эти способы могут быть следующими:The options include:
|
error= {normal | severe | critical | ignore} | Указывает серьезность ошибки, если служба не запускается при запуске компьютера.Specifies the severity of the error if the service fails to start when the computer is started. Эти способы могут быть следующими:The options include:
|
binpath= <binarypathname> | Указывает путь к двоичному файлу службы.Specifies a path to the service binary file. Значение по умолчанию для BinPath =, и эта строка должна быть указана.There is no default for binpath=, and this string must be supplied. |
group= <loadordergroup> | Указывает имя группы, членом которой является эта служба.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= {yes | no} | Указывает, следует ли получить 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= <dependencies> | Указывает имена служб или групп, которые должны быть запущены перед этой службой.Specifies the names of services or groups that must start before this service. Имена разделяются косой чертой (/).The names are separated by forward slashes (/). |
obj= {<accountname> | <objectname>} | Указывает имя учетной записи, в которой будет выполняться служба, или задает имя объекта драйвера 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= <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= <password> | Указывает пароль.Specifies a password. Это необходимо, если используется учетная запись, отличная от учетной записи LocalSystem.This is required if an account other than the LocalSystem account is used. |
/?/? | Отображение справки в командной строке.Displays help at the command prompt. |
Комментарии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:
sc.exe \\myserver create NewService binpath= c:\windows\system32\NewServ.exe
sc.exe create NewService binpath= c:\windows\system32\NewServ.exe type= share start= auto depend= +TDI NetBIOS
Дополнительные ссылкиAdditional References
Создание службы в Windows
Бывает, что имеется некий исполняемый файл, который необходимо зарегистрировать в системе как службу Windows 10. Существует множество различных способов, которые позволяют это сделать. Сейчас мы рассмотрим два основных и проверенных метода создания службы Windows.
Создание службы с помощью программы Sc.exe
Первый способ позволяет создавать службы, используя утилиты, работающие через командную строку. В данном случае, используется инструмент sc.exe. Он позволяет взаимодействовать с функциями API и выполнять операции со службами Windows 10. Несмотря на то, что данная программа даже не обладает графическим интерфейсом, она является мощным инструментом и может контролировать состояние служб, создавать, редактировать и управлять ими.
Если создавать службу, с помощью sc.exe, то не возникает необходимости в изменении параметров реестра и списка служб в диспетчере. Кроме того, утилита способна работать со службами на локальном компьютере, и выполнять те же действия на удаленных машинах.
Чтобы создать новый сервис, откройте командную строку от имени администратора и запустите команду «Sc create». Она запишет новую службу к базе диспетчера служб. Синтаксис команды представлен следующим образом:
sc create [ServiceName] [binPath= ] <параметр1= > <параметр2= >
Где:
- ServiceName — данным параметром определяется имя раздела службы в реестре;
Данное имя не совпадает с тем именем, которое будет отображаться диспетчере (например, в Services). - BinPath — в этом параметре записываем путь, где хранится исполняемый файл.
Чтобы было понятнее, в качестве примера, мы создадим службу «MySevice». При этом, отображаемое имя будет «My New Service». Указываем тип службы и включаем автозапуск:
Sc create MyService binPath=C:\MyService\MyService.exe DisplayName=″My New Service″ type=own start=auto
Теперь откройте оснастку «Services» и взгляните на то, что получилось:
Параметры службы, которая уже была создана и запущена, можно изменить при помощи команды Sc config. К примеру, мы заменим имя службы, которое отображается как:
Sc config MyService DisplayName=″My Service″
А еще можно избавиться от службы полным ее удалением. Для этого используйте такую команду:
Sc delete MyService
С помощью утилиты PowerShell
Ну а с помощью такого мощного инструмента, как PowerShell можно хоть горы двигать. Он обладает большими возможностями и способен работать с различными службами. Здесь, для добавления новой службы, существует специальная команда «New -Service». Давайте попробуем новую службу, как и в прошлом примере, будем использовать те же имена и значения, только добавим дополнительный параметр, в виде описания. И так, команда, для создания нового сервиса, выглядит следующим образом:
New-Service -Name MyService -BinaryPathName C:\MyService\MyService.exe` -DisplayName ″My New Service″ -Description ″Very Important Service !!!″
Для изменения параметров служб, существует команда «Set -Service»:
Set-Service -Name MyService -Description ″Not Very Important Service″ -StartupType Manual
Если не считать дополнительную возможность добавления описаний к службам, PowerShell обладает таким же функционалом, как и утилита Sc.exe. Но есть один маленький минус — здесь нет простой команды для удаления службы. Поэтому приходиться использовать такой вот, немного мудреный, код:
(Get-WmiObject win32_service -Filter ″name=′MyService′″).delete()
Так что утилита sc.exe, в этом плане будет получше. И по этой причине я предпочитаю именно ее.
SC CREATE создание службы
SC CREATE создание службы
Команда SC CREATE создает запись службы в реестре и в базе данных диспетчера служб. А для запуска только что созданной службы из командной строки служит команда SC START.
Синтаксис и параметры команды SC CREATE
sc [имя_сервера] create [имя_службы] [type= {own|share|kernel|filesys|rec|adapt|interact type= {own|share}}] [start= {boot|system|auto|demand|disabled}] [error= {normal|severe|critical|ignore}] [binpath= имя_двоичного_пути] [group= группа_порядка_загрузки] [tag= {yes|no}] [depend= зависимости] [obj= {имя_учетной_записи|имя_объекта}] [displayname= отображаемое_имя] [password= пароль]
- имя_сервера - Задает имя удаленного сервера, на котором находится служба. В имени следует использовать формат UNC ("\\myserver"). Чтобы запустить SC локально, этот параметр следует пропустить.
- имя_службы - Указывает имя службы, возвращенное операцией getkeyname.
- type= {own|share|kernel|filesys|rec|adapt|interact type= {own|share}} - Указывает тип службы. Тип по умолчанию type= own.
- start= {boot|system|auto|demand|disabled} - Указывает тип запуска для службы. Тип запуска по умолчанию start= demand.
- error= {normal|severe|critical|ignore} - Указывает серьезность ошибки, если служба не запускается при загрузке. Значение параметра по умолчанию error= normal.
- binpath= имя_двоичного_пути - Указывает путь в двоичном файле службы. Значение по умолчанию для параметра binpath= не задано. Эту строку необходимо указать.
- group= группа_порядка_загрузки - Указывает имя группы, членом которой является эта служба. Список групп сохраняется в реестре в подразделе HKLM\System\CurrentControlSet\Control\ServiceGroupOrder. Значение по умолчанию является пустым.
- tag= {yes|no} - Указывает, следует ли получить код TagID из вызова CreateService. Теги используются только драйверами, запускающимися при загрузке или запуске системы.
- depend= зависимости - Указывает имена служб и групп, которые должны быть запущены раньше данной службы. Имена разделяются косой чертой (/).
- obj= {имя_учетной_записи|имя_объекта} - Указывает имя учетной записи, для которой будет выполняться служба, или имя объекта драйвера Windows, в котором будет запущен драйвер
- displayname= отображаемое_имя - Определяет понятное, точное имя для службы, которое используется в программах пользовательского интерфейса.
- password= пароль - Задает пароль. Данный параметр требуется при использовании учетной записи, отличной от учетной записи «Локальная система».
- /? - Отображает справку в командной строке.
Примеры команды SC CREATE
- sc \\myserver create NewService binpath= c:\windows\system32\NewServ.exe
- sc create NewService binpath= c:\windows\system32\NewServ.exe type= share start= auto depend= "+TDI Netbios"
Практическое руководство. Создание служб Windows
- Чтение занимает 2 мин
В этой статье
При создании службы можно использовать шаблон проекта 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.
Создание приложения службы WindowsTo create a Windows Service application
Создайте проект Служба Windows.Create a Windows Service project.
В окне Свойства задайте для своей службы свойство 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 totrue
.Примечание
Когда CanStop или CanPauseAndContinue имеют значение
false
, диспетчер служб будет отключать пункты меню, отвечающие за остановку, приостановку или возобновление работы службы.When CanStop or CanPauseAndContinue are set tofalse
, 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.
См. такжеSee also
Практическое руководство. Установка и удаление служб Windows
- Чтение занимает 2 мин
В этой статье
Если вы разрабатываете службу Windows с помощью .NET Framework, вы можете быстро установить приложение службы с помощью служебной программы командной строки InstallUtil.exe или PowerShell.If you’re developing a Windows service with the .NET Framework, you can quickly install your service app by using the InstallUtil.exe command-line utility or PowerShell. Если вы являетесь разработчиком и хотите создать службу Windows, которую пользователи могут устанавливать и удалять, можно использовать набор инструментов WiX или коммерческие средства, такие как Advanced Installer, InstallShield или другие.Developers who want to release a Windows service that users can install and uninstall can use the free WiX Toolset or commercial tools like Advanced Installer, InstallShield, or others. См. сведения о создании пакета установщика (классическое приложение Windows).For more information, see Create an installer package (Windows desktop).
Предупреждение
Если вы хотите удалить службу на своем компьютере, не выполняйте процедуру, описанную в этой статье.If you want to uninstall a service from your computer, don’t follow the steps in this article. Вместо этого определите, какая программа (или программный пакет) установила эту службу, а затем выберите Приложения в параметрах, чтобы удалить эту программу.Instead, find out which program or software package installed the service, and then choose Apps in Settings to uninstall that program. Следует отметить, что многие службы являются составной частью ОС Windows. Если их удалить, это может привести к нестабильной работе системы.Note that many services are integral parts of Windows; if you remove them, you might cause system instability.
Чтобы использовать процедуру, описанную в этой статье, сначала необходимо добавить установщик службы в свою службу Windows.To use the steps in this article, you first need to add a service installer to your Windows service. Дополнительные сведения см. в разделе Пошаговое руководство: создание диспетчера служб Windows.For more information, see Walkthrough: Creating a Windows service app.
Проекты служб Windows нельзя запускать непосредственно из среды разработки Visual Studio путем нажатия клавиши F5.You can't run Windows service projects directly from the Visual Studio development environment by pressing F5. Перед запуском проекта необходимо установить службу в проекте.Before you can run the project, you must install the service in the project.
Установка службы вручную с помощью служебной программы InstallUtil.exeInstall your service manually using InstallUtil.exe utility
В меню Пуск выберите каталог Visual Studio <version> и затем Командная строка разработчика для VS <version> .From the Start menu, select the Visual Studio <version> directory, then select Developer Command Prompt for VS <version>.
Появится командная строка разработчика для Visual Studio.The Developer Command Prompt for Visual Studio appears.
Откройте каталог, где находится скомпилированный исполняемый файл вашего проекта.Access the directory where your project's compiled executable file is located.
Запустите InstallUtil.exe из командной строки, указав исполняемый файл проекта в качестве параметра:Run InstallUtil.exe from the command prompt with your project's executable as a parameter:
installutil <yourproject>.exe
Если вы используете командную строку разработчика для Visual Studio, системный путь должен указывать на файл InstallUtil.exe.If you’re using the Developer Command Prompt for Visual Studio, InstallUtil.exe should be on the system path. Если это не так, можно добавить его в путь или использовать полный путь для его вызова.Otherwise, you can add it to the path, or use the fully qualified path to invoke it. Этот инструмент устанавливается вместе с платформой .NET Framework в папку %WINDIR%\Microsoft.NET\Framework[64]\<версия_платформы> .This tool is installed with the .NET Framework in %WINDIR%\Microsoft.NET\Framework[64]\<framework_version>.
Пример:For example:
- Для 32-разрядной версии .NET Framework 4 или 4.5 и более поздних версий: если каталог установки Windows — C:\Windows, по умолчанию используется путь C:\Windows\Microsoft.NET\Framework\v4.0.30319\InstallUtil.exe.For the 32-bit version of the .NET Framework 4 or 4.5 and later, if your Windows installation directory is C:\Windows, the default path is C:\Windows\Microsoft.NET\Framework\v4.0.30319\InstallUtil.exe.
- Для 64-разрядной версии .NET Framework 4 или 4.5 и более поздних версий: по умолчанию используется путь C:\Windows\Microsoft.NET\Framework64\v4.0.30319\InstallUtil.exe.For the 64-bit version of the .NET Framework 4 or 4.5 and later, the default path is C:\Windows\Microsoft.NET\Framework64\v4.0.30319\InstallUtil.exe.
Удаление службы вручную с помощью служебной программы InstallUtil.exeUninstall your service manually using InstallUtil.exe utility
В меню Пуск выберите каталог Visual Studio <version> и затем Командная строка разработчика для VS <version> .From the Start menu, select the Visual Studio <version> directory, then select Developer Command Prompt for VS <version>.
Появится командная строка разработчика для Visual Studio.The Developer Command Prompt for Visual Studio appears.
Запустите InstallUtil.exe из командной строки, указав выходные данные проекта в качестве параметра:Run InstallUtil.exe from the command prompt with your project's output as a parameter:
installutil /u <yourproject>.exe
После удаления исполняемого файла для службы сама служба может по-прежнему присутствовать в реестре.After the executable for a service is deleted, the service might still be present in the registry. В этом случае удалить запись службы из реестра можно с помощью команды sc delete.If that's the case, use the command sc delete to remove the entry for the service from the registry.
Установка службы вручную с помощью PowerShellInstall your service manually using PowerShell
В меню Пуск выберите Каталог Windows PowerShell и Windows PowerShell.From the Start menu, select the Windows PowerShell directory, then select Windows PowerShell.
Откройте каталог, где находится скомпилированный исполняемый файл вашего проекта.Access the directory where your project's compiled executable file is located.
Выполните командлет New-Service, указав в качестве параметров выходные данные проекта и имя службы.Run the New-Service cmdlet with the with your project's output and a service name as parameters:
New-Service -Name "YourServiceName" -BinaryPathName <yourproject>.exe
Удаление службы вручную с помощью PowerShellUninstall your service manually using PowerShell
В меню Пуск выберите Каталог Windows PowerShell и Windows PowerShell.From the Start menu, select the Windows PowerShell directory, then select Windows PowerShell.
Выполните командлет Remove-Service, указав в качестве параметра имя службы.Run the Remove-Service cmdlet with the name of your service as parameter:
Remove-Service -Name "YourServiceName"
После удаления исполняемого файла для службы сама служба может по-прежнему присутствовать в реестре.After the executable for a service is deleted, the service might still be present in the registry. В этом случае удалить запись службы из реестра можно с помощью команды sc delete.If that's the case, use the command sc delete to remove the entry for the service from the registry.
sc.exe delete "YourServiceName"
См. такжеSee also
Как открыть Службы в Windows 7
«Службы» — стандартное приложение Windows, которое есть в том числе и в «семерке». Оно необходимо для управления различными службами, запущенными или остановленными в системе, позволяя переключать их состояние, задавать параметры запуска, настраивать их восстановление после сбоев и работать с другими сопутствующими параметрами. О методах открытия этой оснастки мы расскажем в статье далее.
Запуск оснастки «Службы» в Windows 7
Для запуска этого компонента в Виндовс предусмотрено сразу несколько способов, и мы расскажем наиболее популярные из них. Кроме того, в статье будут упомянуты варианты решения различных проблем, связанных с попытками запуска «Служб».
Способ 1: Окно «Выполнить»
Через окно «Выполнить» можно открывать разнообразные директории и системные приложения, вводя в специальное поле адреса или кодовые названия программ. Это один из самых быстрых и удобных вариантов запуска «Служб» при условии, что пользователь запомнит, как эта оснастка именуется в Windows.
- Нажмите сочетание клавиш Win + R.
- В открывшееся окошко впишите команду
services.msc
и нажмите Enter либо «ОК». - Приложение «Службы» будет запущено.
Способ 2: «Диспетчер задач»
Через «Диспетчер задач» можно не только смотреть запущенные процессы, но и выполнять некоторые другие действия, среди которых есть нужное нам.
- Откройте любым удобным образом «Диспетчер задач». Для этого можно нажать комбинацию клавиш Ctrl + Shift + Esc или, например, кликнуть правой кнопкой мыши по панели задач, выбрав необходимый пункт из контекстного меню.
- Переключитесь на вкладку «Службы», а затем нажмите на кнопку с этим же названием.
Способ 3: Меню «Пуск»
Через поисковое поле «Пуска» также не составит труда отыскать «Службы», просто начав набирать их название и кликнув ЛКМ по совпадению.
Читайте также: Не работает поиск в Windows 7
Способ 4: Командная строка
Этот вариант подразумевает запуск «Служб» во время активной консоли. В остальных ситуациях открывать сперва ее, а затем сами «Службы» не имеет смысла — вы просто выполняете лишние действия. Тем не менее кому-то именно такой метод запуска будет казаться удобнее остальных (например, когда ярлык «Командной строки» вынесен на рабочий стол или она в принципе активно используется юзером). Для запуска в развернутой «Командной строке» напишите команду services.msc
и нажмите Enter.
Способ 5: Панель управления
Данный вариант, как и предыдущий, актуален далеко не для всех, а только при работе с «Панелью управления», иначе вы просто будете совершать больше манипуляций и кликов мышью, чем в перечисленных выше способах.
- В открытой «Панели управления» найдите значок «Администрирование» и нажмите по нему. Если тип просмотра установлен не «Значки», а «Категория», сперва перейдите в «Система и безопасность» и уже там в самом низу нажмите по выделенному большими буквами слову «Администрировании».
- Из списка всех элементов найдите «Службы» и запустите это приложение.
Способ 6: Системная папка Windows
Осуществить запуск можно и найдя программу в одной из системных папок на компьютере. По умолчанию «Службы», как и многие другие стандартные утилиты Windows, располагаются здесь: C:\Windows\System32. Отыщите приложение «services» и откройте его. В списке может быть два файла с одинаковым названием, запускать нужно тот, что имеет логотип в виде шестеренок.
Устранение проблем с запуском «Служб»
В редких ситуациях пользователю не удается запустить оснастку, и почти всегда это связано с повреждением системных файлов или вирусной активностью.
- Первое, что нужно предпринять в такой ситуации — попытаться выполнить восстановление системы, если эта функция включена в Windows 7. Используйте последнюю доступную точку восстановления. Новичкам, не выполнявшим ранее такую процедуру, советуем ознакомиться с нашей статьей по этой теме. Для этого перейдите по ссылке ниже и прочитайте информацию в Способе 1.
Подробнее: Восстановление системы в Windows 7
- Следующим действенным вариантом станет использование консольной команды SFC, занимающейся поиском и восстановлением поврежденных системных файлов. Более подробно мы рассматривали эту процедуру в отдельном материале. Используйте ссылку ниже и Способ 1. Некоторым юзерам может подойти и Способ 2.
Подробнее: Восстановление системных файлов в Windows 7
- Порой системе не удается выполнить восстановление, из-за чего пользователю понадобится воспользоваться дополнительной командой для Командной строки, которая исправляет проблемы в хранилище резервных образов системных файлов. Развернуто об этом написано далее.
Подробнее: Восстановление поврежденных компонентов в Windows 7 при помощи DISM
- После запуска утилиты DISM и успешного восстановления снова вернитесь к шагу 2 этой инструкции и попробуйте запустить команду SFC, поскольку DISM лишь только восстанавливает область, из которой SFC берет данные для исправления ошибок.
- В случае отсутствия положительной динамики проверьте свою операционную систему на наличие вирусов. Иногда как раз они блокируют запуск «Служб» и даже работу консольных команд SFC и DISM. О рабочих способах сканирования и удаления вирусов из Windows 7 нами была написана отдельная статья.
Подробнее: Борьба с компьютерными вирусами
- Когда ничего не помогает, начинающему пользователю остается лишь прибегнуть к переустановке операционной системы. Эта процедура не так сложна, как может показаться на первый взгляд. Для всех, кто еще не сталкивался с ней, рекомендуем к ознакомлению отдельные руководства.
Подробнее:
Создаем загрузочную флешку с Windows 7
Установка Windows 7 поверх Windows 7
Переустанавливаем Windows 7 без диска и флешки
В большинстве случаев никаких проблем с запуском приложения «Службы» возникнуть не должно, но если это случилось, представленные рекомендации должны помочь их устранить.
Мы рады, что смогли помочь Вам в решении проблемы.Опишите, что у вас не получилось. Наши специалисты постараются ответить максимально быстро.
Помогла ли вам эта статья?
ДА НЕТКак создать службы Windows
- 2 минуты на чтение
В этой статье
При создании службы можно использовать шаблон проекта Visual Studio под названием Windows Service . Этот шаблон автоматически выполняет большую часть работы за вас, ссылаясь на соответствующие классы и пространства имен, настраивая наследование от базового класса для служб и переопределяя некоторые методы, которые вы, вероятно, захотите переопределить.
Предупреждение
Шаблон проекта служб Windows недоступен в экспресс-выпуске Visual Studio.
Как минимум, для создания функциональной услуги необходимо:
-
Задайте свойство ServiceName.
-
Создайте необходимые установщики для своего служебного приложения.
-
Переопределите и укажите код для методов OnStart и OnStop, чтобы настроить способы работы вашей службы.
Для создания приложения службы Windows
-
Создайте проект Windows Service .
-
В окне Properties установите свойство ServiceName для своей службы.
Примечание
Значение свойства ServiceName всегда должно соответствовать имени, записанному в классах установщика. При изменении этого свойства необходимо также обновить свойство ServiceName классов установщика.
-
Задайте любое из следующих свойств, чтобы определить, как будет работать ваша служба.
Имущество Настройка CanStop Истина
, чтобы указать, что служба будет принимать запросы на остановку работы;false
, чтобы предотвратить остановку службы.CanShutdown Истина
, чтобы указать, что служба хочет получать уведомление при выключении компьютера, на котором она находится, что позволяет ей вызывать процедуру OnShutdown.Можно приостановить и продолжить Истина
, чтобы указать, что служба будет принимать запросы на приостановку или возобновление работы;false
, чтобы предотвратить приостановку и возобновление обслуживания.CanHandlePowerEvent Истина
, чтобы указать, что служба может обрабатывать уведомления об изменениях в состоянии питания компьютера;false
, чтобы служба не уведомлялась об этих изменениях.AutoLog True
для записи информационных записей в журнал событий приложений, когда ваша служба выполняет действие;false
, чтобы отключить эту функцию. Дополнительные сведения см. В разделе Как записывать информацию о службах. Примечание: По умолчанию для AutoLog установлено значениеtrue
.Примечание
Когда для CanStop или CanPauseAndContinue установлено значение
false
, Service Control Manager отключит соответствующие параметры меню, чтобы остановить, приостановить или продолжить службу. -
Откройте редактор кода и введите необходимые параметры для процедур OnStart и OnStop.
-
Переопределите любые другие методы, для которых вы хотите определить функциональность.
-
Добавьте необходимые установщики для своего служебного приложения. Дополнительные сведения см. В разделе Как добавить установщики в приложение-службу.
-
Создайте свой проект, выбрав Build Solution в меню Build .
Примечание
Не нажимайте F5 для запуска вашего проекта - вы не можете запустить сервисный проект таким образом.
-
Установите службу. Дополнительные сведения см. В разделе Как установить и удалить службы.
См. Также
.Введение в приложения служб Windows
- 6 минут на чтение
В этой статье
Службы Microsoft Windows, ранее известные как службы NT, позволяют создавать долго работающие исполняемые приложения, которые запускаются в своих собственных сеансах Windows. Эти службы могут запускаться автоматически при загрузке компьютера, могут быть приостановлены и перезапущены и не отображают никакого пользовательского интерфейса.Эти функции делают службы идеальными для использования на сервере или в тех случаях, когда вам нужны длительные функции, которые не мешают другим пользователям, работающим на том же компьютере. Вы также можете запускать службы в контексте безопасности конкретной учетной записи пользователя, которая отличается от вошедшего в систему пользователя или учетной записи компьютера по умолчанию. Дополнительные сведения о службах и сеансах Windows см. В документации Windows SDK.
Вы можете легко создавать службы, создав приложение, которое устанавливается как служба.Например, предположим, что вы хотите отслеживать данные счетчика производительности и реагировать на пороговые значения. Вы можете написать приложение службы Windows, которое будет прослушивать данные счетчиков производительности, развернуть приложение и начать сбор и анализ данных.
Вы создаете свою службу как проект Microsoft Visual Studio, определяя в нем код, который управляет тем, какие команды могут быть отправлены в службу и какие действия должны выполняться при получении этих команд. Команды, которые могут быть отправлены службе, включают запуск, приостановку, возобновление и остановку службы; вы также можете выполнять собственные команды.
После создания и сборки приложения его можно установить, запустив служебную программу командной строки InstallUtil.exe и передав путь к исполняемому файлу службы. Затем вы можете использовать Services Control Manager для запуска, остановки, приостановки, возобновления и настройки вашей службы. Вы также можете выполнить многие из этих задач в узле Services в Server Explorer или с помощью класса ServiceController.
Сравнение приложений-служб и других приложений Visual Studio
Сервисные приложения работают по-разному от многих других типов проектов:
-
Скомпилированный исполняемый файл, создаваемый проектом приложения-службы, должен быть установлен на сервере, прежде чем проект сможет полноценно функционировать.Вы не можете отлаживать или запускать служебное приложение, нажимая F5 или F11; вы не можете сразу запустить службу или войти в ее код. Вместо этого вы должны установить и запустить службу, а затем подключить отладчик к процессу службы. Дополнительные сведения см. В разделе Как отлаживать приложения-службы Windows.
-
В отличие от некоторых типов проектов, вы должны создавать компоненты установки для сервисных приложений. Компоненты установки устанавливают и регистрируют службу на сервере и создают запись для вашей службы с помощью Windows Services Control Manager .Дополнительные сведения см. В разделе Как добавить установщики в приложение-службу.
-
Метод
Main
для вашего приложения службы должен выдавать команду Run для служб, содержащихся в вашем проекте. МетодRun
загружает службы в Services Control Manager на соответствующем сервере. Если вы используете шаблон проекта Windows Services , этот метод будет написан автоматически. Обратите внимание, что загрузка службы - это не то же самое, что запуск службы.См. «Срок службы» ниже для получения дополнительной информации. -
Приложения службы Windows работают на другой оконной станции, чем интерактивная станция вошедшего в систему пользователя. Оконная станция - это защищенный объект, содержащий буфер обмена, набор глобальных атомов и группу объектов рабочего стола. Поскольку станция службы Windows не является интерактивной станцией, диалоговые окна, открываемые из приложения службы Windows, не будут видны и могут привести к тому, что ваша программа перестанет отвечать.Точно так же сообщения об ошибках должны регистрироваться в журнале событий Windows, а не создаваться в пользовательском интерфейсе.
Классы обслуживания Windows, поддерживаемые .NET Framework, не поддерживают взаимодействие с интерактивными станциями, то есть с вошедшим в систему пользователем. .NET Framework также не включает классы, представляющие станции и рабочие столы. Если ваша служба Windows должна взаимодействовать с другими станциями, вам потребуется доступ к неуправляемому Windows API. Дополнительные сведения см. В документации Windows SDK.
Взаимодействие службы Windows с пользователем или другими станциями должно быть тщательно спроектировано с учетом таких сценариев, как отсутствие вошедшего в систему пользователя или наличие у пользователя неожиданного набора объектов рабочего стола. В некоторых случаях может быть более целесообразным написать приложение Windows, работающее под управлением пользователя.
-
Приложения-службы Windows запускаются в собственном контексте безопасности и запускаются до того, как пользователь войдет в компьютер Windows, на котором они установлены.Вы должны тщательно спланировать, в какой учетной записи вы будете запускать службу; служба, работающая под системной учетной записью, имеет больше разрешений и привилегий, чем учетная запись пользователя.
Срок службы
Сервис проходит через несколько внутренних состояний за время своего существования. Сначала служба устанавливается в систему, в которой она будет работать. Этот процесс запускает программы установки для проекта службы и загружает службу в Services Control Manager для этого компьютера.Диспетчер управления службами - это центральная утилита, предоставляемая Windows для администрирования служб.
После загрузки службы ее необходимо запустить. Запуск службы позволяет ей начать работу. Вы можете запустить службу из Services Control Manager , из Server Explorer или из кода, вызвав метод Start. Метод Start передает обработку методу OnStart приложения и обрабатывает любой код, который вы там определили.
Работающая служба может находиться в этом состоянии неопределенно долго, пока она не будет остановлена ​​или приостановлена, либо пока компьютер не выключится. Служба может находиться в одном из трех основных состояний: выполняется, приостановлено или остановлено. Служба также может сообщать о состоянии ожидающей команды: ContinuePending, PausePending, StartPending или StopPending. Эти статусы указывают на то, что команда была выдана, например команда приостановить работающую службу, но еще не была выполнена. Вы можете запросить статус, чтобы определить, в каком состоянии находится служба, или использовать WaitForStatus для выполнения действия при возникновении любого из этих состояний.
Вы можете приостановить, остановить или возобновить работу службы из Services Control Manager , из Server Explorer или путем вызова методов в коде. Каждое из этих действий может вызывать связанную процедуру в службе (OnStop, OnPause или OnContinue), в которой вы можете определить дополнительную обработку, которая будет выполняться при изменении состояния службы.
Виды услуг
Существует два типа служб, которые вы можете создать в Visual Studio с помощью .NET Framework.Службы, которые являются единственной службой в процессе, получают тип Win32OwnProcess. Службам, которые совместно используют процесс с другой службой, присваивается тип Win32ShareProcess. Вы можете получить тип службы, запросив свойство ServiceType.
Иногда вы можете видеть другие типы служб, если запрашиваете существующие службы, которые не были созданы в Visual Studio. Дополнительные сведения об этом см. В файле ServiceType.
Сервисы и компонент ServiceController
Компонент ServiceController используется для подключения к установленной службе и управления ее состоянием; Используя компонент ServiceController, вы можете запускать и останавливать службу, приостанавливать и продолжать ее работу, а также отправлять пользовательские команды службе.Однако вам не нужно использовать компонент ServiceController при создании приложения-службы. Фактически, в большинстве случаев ваш компонент ServiceController должен существовать в отдельном приложении от приложения службы Windows, которое определяет вашу службу.
Для получения дополнительной информации см. ServiceController.
Требования
-
Службы должны быть созданы в проекте приложения Windows Service или другом проекте с поддержкой .NET Framework, который создает файл.exe-файл при сборке и наследуется от класса ServiceBase.
-
Проекты, содержащие службы Windows, должны иметь установочные компоненты для проекта и его служб. Это легко сделать из окна Properties . Дополнительные сведения см. В разделе Как добавить установщики в приложение-службу.
См. Также
.Как: запустить службы | Документы Microsoft
- 2 минуты на чтение
В этой статье
После установки службы ее необходимо запустить. Запуск вызывает метод OnStart в классе обслуживания. Обычно метод OnStart определяет полезную работу, которую будет выполнять служба. После запуска службы она остается активной до тех пор, пока не будет приостановлена ​​или остановлена ​​вручную.
Службы можно настроить на автоматический или ручной запуск. Служба, которая запускается автоматически, будет запущена при перезагрузке или первом включении компьютера, на котором она установлена. Пользователь должен запустить службу, которая запускается вручную.
Примечание
По умолчанию службы, созданные с помощью Visual Studio, запускаются вручную.
Есть несколько способов запустить службу вручную - из Server Explorer , из Services Control Manager или из кода с помощью компонента, называемого ServiceController.
Вы устанавливаете свойство StartType в классе ServiceInstaller, чтобы определить, следует ли запускать службу вручную или автоматически.
Чтобы указать, как должна запускаться служба
-
После создания службы добавьте для нее необходимые установщики. Дополнительные сведения см. В разделе Как добавить установщики в приложение-службу.
-
В дизайнере щелкните программу установки службы, с которой вы работаете.
-
В окне Свойства установите для свойства StartType одно из следующих значений:
Для установки вашей службы Установите это значение При перезагрузке компьютера Автомат Когда явное действие пользователя запускает службу Ручная Подсказка
Чтобы вообще предотвратить запуск вашей службы, вы можете установить для свойства StartType значение Disabled .Вы можете сделать это, если собираетесь перезагрузить сервер несколько раз и хотите сэкономить время, не допуская запуска служб, которые обычно запускаются.
Примечание
Эти и другие свойства можно изменить после установки службы.
Существует несколько способов запустить службу, для процесса StartType которой задано значение Manual - из Server Explorer , из Windows Services Control Manager или из кода.Важно отметить, что не все эти методы фактически запускают службу в контексте Services Control Manager ; Server Explorer и программные методы запуска службы фактически управляют контроллером.
Чтобы вручную запустить службу из Server Explorer
-
В Server Explorer добавьте нужный сервер, если он еще не указан. Дополнительные сведения см. В разделе Как получить доступ и инициализировать обозреватель сервера - обозреватель базы данных.
-
Разверните узел Services , а затем найдите службу, которую хотите запустить.
-
Щелкните правой кнопкой мыши имя службы и выберите Запустить .
Чтобы запустить службу вручную из диспетчера служб
-
Откройте диспетчер управления службами , выполнив одно из следующих действий:
-
В Windows XP и 2000 Professional щелкните правой кнопкой мыши Мой компьютер на рабочем столе, а затем щелкните Управление .В появившемся диалоговом окне разверните узел Services and Applications .
- или -
-
В Windows Server 2003 и Windows 2000 Server щелкните Пуск , укажите Программы , щелкните Администрирование , а затем щелкните Services .
Примечание
В Windows NT версии 4.0 это диалоговое окно можно открыть из панели управления .
Теперь вы должны увидеть свою службу, указанную в разделе окна Services .
-
-
Выберите службу в списке, щелкните ее правой кнопкой мыши, а затем щелкните Запустить .
Чтобы вручную запустить службу с кода
-
Создайте экземпляр класса ServiceController и настройте его для взаимодействия со службой, которую вы хотите администрировать.
-
Вызовите метод Start, чтобы запустить службу.
См. Также
.Создание пользовательской службы - Windows Client
- 2 минуты на чтение
В этой статье
В этой статье описаны действия по созданию пользовательской службы Windows NT.
Исходная версия продукта: Windows 10 - все выпуски
Оригинальный номер в базе знаний: 137890
Важно
Эта статья содержит информацию о редактировании реестра.Перед тем как редактировать реестр, убедитесь, что вы понимаете, как восстановить его в случае возникновения проблемы. Для получения информации о том, как это сделать, просмотрите разделы интерактивной справки Восстановление реестра или Восстановление ключа реестра в редакторе реестра.
Сводка
Windows NT Resource Kit предоставляет две служебные программы, которые позволяют создавать определяемую пользователем службу Windows NT для приложений Windows NT и некоторых 16-разрядных приложений (но не для пакетных файлов).
Instrsrv.exe устанавливает и удаляет системные службы из Windows NT, а Srvany.exe позволяет любому приложению Windows NT работать как служба.
Шаги по созданию пользовательской службы
Чтобы создать пользовательскую службу Windows NT, выполните следующие действия:
-
В командной строке MS-DOS (при запуске CMD.EXE) введите следующую команду:
путь \ INSTSRV.EXE Мой путь к службе \ SRVANY.EXE
, где путь - это диск и каталог Windows NT Resource Kit (например,
C: \ RESKIT
), а My Service - это имя создаваемой вами службы.Пример:
C: \ Program Files \ Resource Kit \ Instsrv.exe Блокнот C: \ Program Files \ Resource Kit \ Srvany.exe
Примечание
Чтобы убедиться, что служба была создана правильно, проверьте реестр, чтобы убедиться, что значение ImagePath в разделе
HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Services \ имя службы
установлено так, чтобы указывать на SRVANY.EXE. Если он установлен неправильно, служба остановится вскоре после запуска и вернет событие с кодом 7000 (служба с именем не запустилась).Предупреждение
Неправильное использование редактора реестра может вызвать серьезные проблемы, которые могут потребовать переустановки операционной системы. Microsoft не может гарантировать, что проблемы, возникшие в результате неправильного использования редактора реестра, могут быть решены. Используйте редактор реестра на свой страх и риск.
Информацию о том, как редактировать реестр, см. В разделе интерактивной справки «Изменение ключей и значений» или в разделе «Добавление и удаление информации в реестре» и «Редактирование данных реестра» в интерактивной справке редактора реестра.
Примечание
Перед редактированием реестра необходимо создать резервную копию.
-
Запустите редактор реестра (Regedt32.exe) и найдите следующий подраздел:
HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Services \ <Моя служба>
-
В меню Изменить щелкните Добавить ключ . Введите следующее и нажмите ОК :
- Имя ключа: Параметры
- Класс: <оставить пустым>
-
Нажмите кнопку Parameters .
-
В меню Изменить щелкните Добавить значение . Введите следующее и нажмите ОК :
- Имя значения: Приложение
- Тип данных: REG_SZ
- Строка: <путь> \
, где <путь> \
- это диск и полный путь к исполняемому файлу приложения, включая расширение (например, C: \ WinNT \ Notepad.exe) -
Закройте редактор реестра.
По умолчанию вновь созданная служба настроена на автоматический запуск при перезапуске системы. Чтобы изменить этот параметр на Manual , запустите апплет Services из панели управления и измените значение Startup на Manual . Сервис, установленный на Ручной , может быть запущен одним из нескольких способов:
-
Из апплета «Службы» на панели управления
-
В командной строке MS-DOS введите следующее:
NET START <Моя служба>
-
Используйте Sc.exe из Resource Kit. Введите в командной строке MS-DOS следующее:
<путь> \ Sc.exe start <Моя служба>
, где <путь> - это диск и каталог Windows NT Resource Kit (например,
C: \ Reskit
).
Для получения дополнительной информации об установке и удалении определяемой пользователем службы см. Документ Srvany.wri, поставляемый с утилитами Windows NT Resource Kit (например, C: \ Reskit \ Srvany.wri
). Этот документ также можно найти на компакт-диске Windows NT Resource Kit в каталоге Common \ Config
.
Создать учетную запись пользователя в Windows
Проведите пальцем от правого края экрана, нажмите Настройки , а затем нажмите Изменить настройки ПК .
(Если вы используете мышь, наведите указатель на правый нижний угол экрана, переместите указатель мыши вверх, щелкните Settings , а затем щелкните Change PC settings .)
Коснитесь или щелкните Учетные записи , а затем коснитесь или щелкните Другие учетные записи .
Коснитесь или щелкните Добавить учетную запись , а затем коснитесь или щелкните Войти без учетной записи Microsoft (не рекомендуется) .
Коснитесь или щелкните Локальная учетная запись .
Введите имя пользователя для новой учетной записи.
Если вы хотите, чтобы этот человек вошел в систему с паролем, введите и подтвердите пароль, добавьте подсказку для пароля, а затем нажмите или щелкните Далее .
Если ваш компьютер находится в домене, в зависимости от настроек безопасности домена вы можете пропустить этот шаг и нажать или щелкнуть Далее , если хотите.
Коснитесь или щелкните Готово .
Ярлык Windows 7 для просмотра служб и различных служб в Windows
Переполнение стека- Около
- Продукты
- Для команд
- Переполнение стека Общественные вопросы и ответы
Смотрите также
- X windows system32 что делать дальше
- Как изменить тип сети с частной на общественную в windows 10
- Глонасс на андроиде как работает
- Как восстановить сообщения в вайбере на андроид
- Линукс как смонтировать флешку в
- Как на андроиде сбить пароль
- Установить ubuntu на флешку как полноценную ос
- Как подобрать ключ к лицензионной windows 7
- Флешка только для чтения как изменить
- Как сбросить настройки на компьютере windows 7
- Как восстановить windows 10 с помощью командной строки