2015-07-13 2 views
1

У меня есть служба WCF, которая запускает файл .bat. Он работает на моей локальной системе, но у меня есть проблема с запуском его на сервере (Windows server 2012 r2).Как использовать переменную среды с пользователем IIS

Я определил переменную ANT_HOME переменной окружения сервера, и я добавил %ANT_HOME%\bin в Path переменной.

Когда я пишу «ant» на CMD на сервере, он работает! Но когда я звоню в службу wcf, это не работает.

я обнаружил следующее сообщение об ошибке в лог-файлах:

'ant' is not recognized as an internal or external command, 
operable program or batch file. 

Согласно этому бревну, я понимаю, что пользователь IIS не может использовать ANT_HOME переменную, которая уже определена.

То, что я пытался до сих пор:

  • идентичность олицетворять
  • дает полное разрешение на пользователя IIS
+0

Вы отредактировали переменную среды пользователя PATH переменной окружения PATH? Вы перезагрузили Windows, чтобы получить измененный PATH? –

ответ

0

Какую версию IIS бежишь? Если вы используете версию, в которой вы можете создать отдельный Application Pool для своей службы, тогда сделайте это и дайте этому пулу приложений идентификатор, который имеет правильную PATH или определяет ANT_HOME для этого пользователя. Мне всегда нравится добавлять метод типа Ping ко всем моим услугам, поэтому я могу спросить у службы, в которой он работает, и где он работает. Он отлично подходит для устранения неполадок и тестирования служб WCF.