Windows

應該為 Windows 服務設置哪些核心環境變數?

  • December 15, 2013

當使用 srvany 或nssm 之類的服務管理器將普通程序作為服務執行時,您可以使用系統資料庫設置程序的環境,如下所述:http: //support.microsoft.com/kb/197178。執行此操作時,您需要設置所有環境變數,而不僅僅是您要更改的環境變數。微軟的文章說,“確保包括所有核心條目,如 PATH、TEMP、OS 等。” “等等”中究竟包括什麼,是否有明確的參考資訊?

沒有您需要設置的環境變數的具體列表。答案就是您的應用程序/服務將使用的所有環境變數。這取決於應用程序。特定應用程序可能只使用TEMP,或者它可能根本不需要任何環境變數。或者_NT_SYMBOL_PATH如果找不到該環境變數,它可能會使用並且會崩潰!不知道您的應用程序就無法知道。

如果您set在命令行鍵入,您將獲得目前環境變數的列表,這是一個非常好的開始列表。

編輯:如果您想查看目前 Windows 服務使用的環境變數作為範例,請在 Powershell 3 中鍵入:

$(Get-Process svchost)[0].StartInfo.EnvironmentVariables

引用自:https://serverfault.com/questions/556171