Environment-Variables
在Windows上記憶體路徑環境變數?
我正在協助我們的一位測試人員解決 Windows XP SP3 系統上的配置問題。我們的應用程序使用一個名為 APP_HOME 的環境變數來引用我們的應用程序的安裝目錄。安裝應用程序時,我們使用以下環境變數:
APP_HOME = C:\application\ PATH = %PATH%;%APP_HOME%bin
現在,問題在於她正在處理同一個應用程序的多個版本。因此,例如,為了在 7.0 和 8.1 版本之間切換,她可能會使用:
APP_HOME = C:\application_7.0\ (for 7.0)
然後將其更改為:
APP_HOME = C:\application_8.1\ (for 8.1)
問題是,一旦進行了此更改,PATH 環境變數顯然仍在查看 APP_HOME 變數的舊擴展。所以,比如她改了APP_HOME後,PATH還是指的是7.0的bin目錄。
關於為什麼會發生這種情況的任何想法?在我看來,PATH 變數正在記憶體 APP_HOME 環境變數的擴展。有什麼辦法可以關閉這種行為?
這些變化不是動態的。當您更改 Windows 的環境變數時,需要重新啟動其他程序才能使它們在新環境中執行。
當程序啟動時,它將擴展
APP_HOME
變數的值並將其附加到您的PATH
. 您需要重新啟動該過程以重新初始化或重置PATH
變數,以便它讀取APP_HOME
.
這似乎是一個
IIS
錯誤。重新啟動將解決您的問題。請注意,殺死w3wp
和回收應用程序池不會做任何事情。您可以通過以下方式檢查以確保
w3wp
使用正確的環境路徑processexplorer.exe