Как запустить команду Windows как службу?

Как запустить команду Windows как службу?

Я использую Windows 7. Я запускаю эту команду в командной строке, чтобы запустить сервер Memcached:

memcached.exe -d start

Однако я хотел бы настроить автоматическое выполнение этой команды при перезагрузке компьютера. Как это настроить?

решение1

Если приложение не имеет доступа к интерфейсу, вы можете сделать это через планировщик задач. Настройте запуск приложения при загрузке из учетной записи пользователя, которая имеет достаточные права для запуска программы.

Помимо этого, найдите Windows 2003 Resource Kit, и в нем есть две программы srvany.exe и instsrv.exe, которые можно использовать для превращения приложения в службу. Они должны нормально работать на машинах с Windows 7.

решение2

Есть несколько подходов.

Я рекомендую использовать приложение "Service Control", поскольку оно полностью интегрируется с панелью управления services.msc, поэтому его можно запустить под произвольным пользователем и автоматически запустить вместе с системой. Однако это может вызвать проблемы со временем загрузки, поэтому, возможно, запуск "Автоматически (отложенный)" — это хорошая идея, чтобы гарантировать, что требуемые службы уже загружены.

sc \\localhost create <newservicename> binpath= c:\path\to\service.exe

Планировщик задач — еще один хороший вариант, — как предположил @DavidPostill — если вам не нужно, чтобы система распознавала exe как службу. Планировщик задач имеет много хороших опций конфигурации.

Некоторые рекомендуют альтернативных менеджеров по обслуживанию, таких как NSSM:http://nssm.cc/

Связанный контент