Заметки о Windows XP
Один из самых часто встречающихся вопросов, связанных с Windows XP – это вопрос о возможности запуска программ как сервиса, что дает определенные преимущества.
Сделать это не так трудно, как считается, для этого необходимо скачать определенный пакет утилит, называемый srvany. пакет состоит из двух утилит INSTSRV.EXE и SRVANY.EXE.
Взять их можно здесь: img.nnow.ru/data/myupload/0/841/841675/srvany.zip
Для начала необходимо скопировать эти файлы в системную директорию %windir%/system32. Затем необходимо запустить файл SRVANY.EXE из командной строки, используя следующий синтаксис: “INSTSRV ServiceName %windir%/srvany.exe“, Где ServiceName – придуманное имя сервиса. Если всё сделано правильно, то появится сообщение, подтверждающее успешное создание сервиса (The service was successfuly added).
Теперь зайдите в Администрирование – Службы (Services). Находите только что созданную службу, двойной клик вызывает свойства сервиса. На первой вкладке можно выбрать параметры запуска – Automatic (автоматически при загрузке компьютера), Manual (Вручную) и Disabled (отключено). Для работы созданного сервиса в отдельном окне необходимо отметить на второй вкладке (Вход в систему) пункт Allow Service to Interact with Desktop (Разрешить взаимодействие с рабочим столом). Пока всё.
Следующим шагом является редактирование реестра. Запускаем редактор реестра Regedit. Шагаем к ветви HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServices и находим имя сервиса здесь. Создаем раздел Paremeters и в этом разделе прописываем путь к программе, которую мы хотим запустить, следующим образом: Строковой параметр: Application значение – путь к программе, которую мы будем запускать как сервис.
Запустить сервис, если он не отключен, можно несколькими способами, во-первых через командную строку: Net Start ServiceName – где SеrviceName – имя Вашего сервиса. И другим способом – непосредственно через апплет административной панели – службы.
Чтобы удалить сервис, его сначала необходимо остановить: net stop ServiceName, затем опять же в коммандной строке выполнить команду INSTSRV ServiceName remove.
Запуск приложения как службы Windows
Службы Windows – запущенные в фоне приложения, которые работают независимо от пользователя компьютера, и управляются непосредственно самой операционной системой. По умолчанию, службами являются строго определенные приложения, однако, ничто не мешает пользователю создать их самому. Выполнить данную задачу можно несколькими способами – с использованием стандартных средств Windows, либо с использованием сторонней программы NSSM.
SC
Входящая в Windows программа SC позволяет легко создавать службы Windows, а так же проводить другие различные с ними манипуляции – удаление, отключение, включение, и т. д. Создается служба достаточно просто, для этого достаточно запустить командную строку от имени администратора, и выполнить там следующую команду:
sc create [ИМЯ СЛУЖБЫ] binPath=[ПУТЬ К ИСПОЛНЯЕМОМУ ФАЙЛУ] DisplayName=[ОТОБРАЖАЕМОЕ ИМЯ СЛУЖБЫ] type=own start=auto
Удаляется же служба еще проще:
sc delete [ИМЯ СЛУЖБЫ]
Однако, у данного метода есть один большой существенный недостаток – с помощью данной утилиты создать службу можно только из программы, которая поддерживает работу службой. По этому, запустить какое попало приложение как службу данным способом не получится – но, можно воспользоваться сторонней утилитой NSSM, о которой речь пойдет ниже.
NSSM
- Предположим, нужно создать службу для веб-сервера nginx под Windows. Для этого, запускаем командную строку с правами администратора, и переходим в директорию с распакованным исполняемым файлом nssm.exe.
- Затем выполняем команду, начинающую установку службы:
nssm install nginx
На самой первой вкладке “Application“, в строке “Path” задается путь к исполняемому файлу, “Startup Directory” – рабочая директория, а “Arguments” – параметры запуска. В самом низу расположена строка “Service Name“, где задается имя создаваемого сервиса.
На вкладке “Details” можно задать имя, под которым будет отображаться создаваемая служба в списке служб, а так же описание службы, которое будет отображаться там же. В выпадающем списке “Startup Type” можно выбрать тип запуска службы.
Вкладка “Log on” позволяет указать пользователя, под которым будет запускаться служба.Заполним все нужные поля и выбрав нужные настройки, остается только нажать кнопку “Install service“, для установки службы.
Так же удалить службу можно с помощью команды в командной строке:
nssm remove [ИМЯ СЛУЖБЫ] confirm
Как в Windows ХР запустить программу, как сервис?
Простой способ: утилита srvinstw.exe, входящая в комплект Windows 2000 Server Resource Kit. С ее помощью устанавливаются или удаляются сервисы.
Также в данный комплект входят программки instsrv.exe и srvany.exe. Чтобы с ними работать нужно зайти под Администратором» — перенести эти файлы в папку %SystemRoot%\System32 – выполнить команду: Пуск – Выполнить — instsrv new_service %SystemRoot%\system32\srvany.exe, где «new_service» – имя сервиса, как оно будет называться в дальнейшем. При наличии в имени пробелов название следует указать в кавычках.
Эти манипуляции приведут к появлению в Управление компьютером – Службы нового сервиса. В его свойствах установите способ запуска, как Автоматически – для запуска его при загрузке ОС, Ручная – для запуска вручную, Отключен – отключить его.
После чего: Редактор реестра — HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Services \ NEW_SERVICE \ Parameters – создать параметр Application – указать значение, как путь к исполняемому файлу программы – сервису..
При подготовке материала использовались источники:
http://corsaro.nnov.org/trash/zametki-o-windows-xp/848798.html
https://pc.ru/articles/zapusk-prilozheniya-kak-sluzhbu-windows
https://spravkapc.ru/windows-xp/windows-xp-voprosy-i-otvety/kak-v-windows-khr-zapustit-programmu-kak-servis.html