Я пытаюсь запустить пакетный файл как службу Windows через nssm, который запустит исполняемый файл, если он не запущен. Мой код для создания службы из командного файла
CALL "%~dp0nssm64.exe" install MyService "%~dp0test.bat"
CALL "%~dp0nssm64.exe" start MyService
(%~dp0 — это путь к пакетному файлу, который я запускаю)
У меня нет проблем с созданием сервиса, но с его запуском. Я получаю следующее сообщение при попытке запустить его вручную
В средстве просмотра событий Windows есть предупреждение с сообщением «Служба MyService выполнялась менее 1500 миллисекунд. Перезапуск будет отложен на 256000 миллисекунд».
Итак, как мне решить проблему? Есть идеи? Спасибо
Изменить
Вот код пакетного файла:
tasklist /FI "IMAGENAME eq SomeEXE.exe" 2>NUL | find /I /N "SomeEXE.exe">NUL
if "%ERRORLEVEL%"=="0" echo Program is running
if "%ERRORLEVEL%"=="1" start "" "%~dp0SomeEXE.exe"
"%~dp0nssm64.exe" install MyService "%~dp0test.bat">NUL 2>&1&&"%~dp0nssm64.exe" Start MyService
. Что касается вашего пакетного файла, вам необходимо удалить комментарий выше и добавить содержимое в виде правильно отформатированного кода, (с помощью кнопки[{}]
), на ваш вопрос по редактируя его. - person Compo   schedule 09.01.2018SmBOsrv.exe
, поэтому вам, вероятно, также потребуется предоставить некоторые подробности об этом в своем вопросе! - person Compo   schedule 09.01.2018