2013-12-14 3 views
0

(ОС: Windows 7)srvany.exe не запускается .bat файл

Использование SC.EXE Я создал службу Windows. Кроме того, я создал необходимые записи реестра, чтобы указать путь приложения (используя ключевые параметры).

«Приложение» - это .BAT-файл, который устанавливает несколько переменных среды и затем вызывает сценарий Python. При запуске .BAT-файла непосредственно из CMD я получаю нормальное, желательное поведение.

Использование диспетчера служб Я могу запустить и остановить службу (работает также с SC.EXE, непосредственно выпущенным из CMD). Все в порядке, никаких предупреждений или ошибок или чего-либо еще не видно (в журнале событий).

Файл BAT не выполняется. Я дважды проверил путь приложения, дважды проверил имя службы.

  • Коррекция: Файл BAT фактически запускается на выполнение (создан простой файл журнала из файла BAT). По-видимому, не работает, как python.exe, как последняя команда в BAT-файле. Я не могу проверить, что ошибка генерируется python.exe, как я не вижу каких-либо файлов журналов, записей журнала событий ...

содержимое BAT файла:

@ECHO OFF 
REM ========================================================================== 
REM ProcessIntergrationBridge Microsoft Windows Service Shell Script 
REM ========================================================================== 
SET CONSEQUOR_PIB_HOME=C:\opt\consequor\pib 
SET CONSEQUOR_PIB_VERSION_DESIGNATOR=pib_b0100 
SET CONSEQUOR_PIB_DATA=C:\var\opt\consequor\pib 
SET CONSEQUOR_PIB_LOG=C:\var\opt\consequor\pib\log 
SET CONSEQUOR_PIB_LOG_FILE=C:\var\opt\consequor\pib\log\pib.log 
SET PYTHONPATH=C:\opt\consequor\pib\%CONSEQUOR_PIB_VERSION_DESIGNATOR% 
SET PYTHONHOME=C:\opt\consequor\pib\python-runtime\win 
SET PATH=%CONSEQUOR_PIB_HOME%\%CONSEQUOR_PIB_VERSION_DESIGNATOR%\bin;%CONSEQUOR_PIB_HOME%\python-runtime\win;CONSEQUOR_PIB_HOME%\python-runtime\win\DLLs;CONSEQUOR_PIB_HOME%\python-runtime\win\libs;CONSEQUOR_PIB_HOME%\python-runtime\win\Lib;%PATH% 
SET CMD=%PYTHONHOME%\pythonw.exe %CONSEQUOR_PIB_HOME%\%CONSEQUOR_PIB_VERSION_DESIGNATOR%\%CONSEQUOR_PIB_VERSION_DESIGNATOR%\start_pib\pib_run_server.py debug 
%CMD% 

записей PIBD Service Registry : (О Merde Alors - я не могу размещать фотографии еще ... - Если кто-то хочет видеть, то я могу отправить через прямую электронную почту ...)

PIBD Registry Entry

PIBD Parameters Setting

Благодарим вас за любой намек на то, как отладить это, исправить, изменить его - вы знаете.

Сердечные приветы

Франк - потратив дней теперь пытается понять тайны Windows.

ответ

0

Я рекомендую этот подход:

  1. Запустите command prompt in Session 0 как пользователь системы
  2. Переключить на сессии 0 (либо из диалогового окна Обнаружение интерактивных служб или from the command line), чтобы найти командную строку
  3. Запустите командный файл из командной строки и посмотрите, какая ошибка является репутацией Orting

Но, глядя на линии «SET PATH =» Я вижу, что некоторые из переменных не выражены надлежащим образом (ведущий% отсутствует на CONSEQUOR_PIB_HOME и другие), которые могут быть проблемой ...

+0

Спасибо, что сделал трюк! Переключение сеанса 0 решило проблему. – dg1sbg

2

Вы должны убедиться, что вы фактически вызываете cmd.exe с вашим командным файлом в качестве аргумента, а не просто вызываете командный файл.

Что-то похожее на это:

C:\Windows\System32\cmd.exe /C C:\opt\consequor\pib\yourbatch.bat 
+0

Основываясь на вашем предложении, я изменил запись реестра для «Приложения» на C: \ Windows \ System32 \ cmd.exe/C C: \ opt \ subsor \ pib \ pib_b0100 \ pibsvc.bat. К сожалению, никаких изменений в поведении. srvany.exe запускается, но базовый файл python.exe (вызванный из файла BAT) не запускается. – dg1sbg

Смежные вопросы