2015-07-13 191 views
1

我有一個運行.bat文件的WCF服務。它適用於我的本地系統,但我在服務器上運行時遇到問題(Windows Server 2012 R2)。如何使用IIS用戶的環境變量

我已經定義了ANT_HOME變量到服務器的環境變量,並且我添加了%ANT_HOME%\binPath變量。

當我寫「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服務非常有用。