Я создал сервис, используя
sc create myService binpath=myservice.bat
Но когда я запускаю его, происходит сбой со следующим сообщением об ошибке:
[SC] StartService FAILED 1053:
The service did not respond to the start or control request in a timely fashion.
На Win2k3 я использовал srvany.exe из Resource Kit, но для Win2k8 нет набора ресурсов. Пока я установил srvany.exe на мою машину, но я не думаю, что это лучший способ сделать это.
Благодарность!
Ответы:
Конечно, вы не можете запустить такой сервис. Вы пробовали использовать srvany в server 2008? Насколько я знаю, «официальной» версии srvany для s2k8 не существует, но вы всегда можете попробовать, не так ли?
РЕДАКТИРОВАТЬ: О, я забыл! Мы также используем FireDaemon для запуска не сервисных приложений в качестве сервисов. Тем не менее, это не бесплатно, и его функциональность слишком велика для ваших нужд.
источник
Используйте NSSM для запуска .BAT или любого старого .EXE-файла в качестве службы. Это почти замена SRVANY и приложение без излишеств.
http://iain.cx/src/nssm/
У меня была такая же проблема, как и у вас, и NSSM была единственной утилитой, которая работала.
источник
Мы используем Task Scheduler для запуска задач при каждом запуске компьютера (независимо от того, вошел пользователь в систему или нет)
источник
Вы не можете просто запустить файл .BAT или любой старый файл .EXE в качестве службы. Службы Windows не работают, что вы. Вы можете использовать утилиту, такую как non-Sucking Service Manager (NSSM) или несвободную утилиту SRVANY от Microsoft, для запуска произвольной программы в качестве службы, но вы можете обнаружить, что не получаете «изящного» поведения при остановке.
источник
Команда SC просто добавляет необходимые записи реестра для службы - если указанный вами файл не является допустимым exe-файлом службы, он не превратит его в один.
источник
От: этот пост на форумах Technet: http://social.technet.microsoft.com/Forums/en-US/winserverMigration/thread/98a97aee-c62b-4683-94ab-3777899cf7de/
Вот что нужно сделать ...
На момент публикации этой статьи не было средств Windows Server 2008 Resource Kit, поэтому получите «srvany.exe» из «Windows Server 2003 Resource Kit Tools» и скопируйте его в подходящее место на вашем сервере Win2008 (например, C: \ Windows \ System32 \). Используйте «sc», чтобы создать новый сервис, который запускает «srvany» (например, sc create MyService binPath = C: \ Windows \ System32 \ srvany.exe DisplayName = «My Custom Service») Использование RegEdit: создайте ключ «Parameters» для вашего служба (например, HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Services \ MyService \ Paramaters \) Используя RegEdit: в только что созданном ключе «Parameters» создайте строковое значение с именем «Application» и введите полный путь к приложению, которое вы хотите запустить как сервис. (Цитаты не требуются.)
И это должно сделать это.
Примечание: некоторые приложения хранят свои настройки в кусте пользователя, а не в HKEY_LOCAL_MACHINE, поэтому вам нужно будет запустить приложение для его настройки, а затем настроить службу для запуска от имени этого пользователя.
источник
попробуй это ... у меня сработало ..
источник
Я наткнулся на эту вещь. Вот инструмент под названием Bat_To_Exe_Converter. Конвертировать любые файлы .bat в файлы .exe очень просто. Попытайся. Сначала загрузите загрузчик, и он автоматически загрузит Bat_To_Exe_Converter. Это действительно помогло мне создать сервис, который запускает мой .bat файл через .exe. http://download.cnet.com/Bat-To-Exe-Converter/3001-2069_4-10555897.html?spi=eae5ab48292cc101b5f0ec370cf99ad0
источник
Я использовал Windows Schtasks.
Вы можете сослаться на это. https://technet.microsoft.com/en-us/library/cc725744.aspx#BKMK_hours
источник
Я нашел два других варианта, которые не позволят вам достать свой кошелек.
Вы можете
sc
запустить,srvany
который затем указывает на вашу программу. (есть сообщение на форуме, на которое я не могу дать ссылку, потому что мне не хватает представителя здесь, хотя я делаю это на StackOverflow - ворчать)Вот шаги, которые использовал оригинальный плакат:
sc
для создания новой службы, которая запускаетсяsrvany
(напримерsc create MyService binPath=C:\Windows\System32\srvany.exe DisplayName="My Custom Service"
)Parameters
ключ для вашего сервиса (напримерHKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\MyService\Parameters\
)Parameters
ключе создайте строковое значение с именемApplication
и введите полный путь к приложению, которое вы хотите запустить как сервис. (Цитаты не требуются.)Если это кажется чем-то вроде взлома , вы можете создать службу .NET для запуска вашего процесса. Если вы хотите пропустить несколько шагов, вот служба с открытым исходным кодом .NET, которая может запускать общие процессы:
http://www.codeproject.com/KB/system/xyntservice.aspx
Настройте его на свои нужды, но он сделает большую часть того, что вы хотите из коробки.
источник