
前段時間,我手動更改了WINDIR
環境變數來測試我正在使用的遺留程式中的某些內容(應該在虛擬機器而不是我的桌面上完成此操作:/但現在為時已晚)
因此,出於某種原因,現在%WINDIR%
不再解析為 c:\windows,而是解析為 %SystemRoot%。從命令列:
echo %WINDIR% outputs %SystemRoot%
和
echo %SystemRoot% outputs C:\windows
無法解決 WINDIR 問題讓我頭痛不已。我嘗試將控制台視窗中的值WINDIR
明確設定c:\windows
為,但無濟於事。我還嘗試手動更改windir註冊表項的值
HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\Session Manager\Environment\windier
和
HKEY_LOCAL_MACHINE\SYSTEM\ControlSet002\Control\Session Manager\Environment\windir
但仍不走運。有人以前看過這種行為嗎?
忘了提及這是在 Windows 7 Enterprise ed 上
答案1
請檢查您所擁有的值的類型Windir
。您可能無意中將其從 更改REG_EXPAND_SZ
為REG_SZ
。您必須直接在登錄中執行此操作(GUI 面板不會向您顯示差異):
啟動登錄編輯器,導航至HKEY_LOCAL_MACHINE\system\currentControlSet\Control\Session Manager\Environment
.
檢查其windir
類型為 REG_EXPAND_SZ
.
如果沒有,請重新建立該條目: windir REG_EXPAND_SZ %SystemRoot%
登出/登入並檢查是否有效
答案2
更正!%SystemRoot%
是預設值。所以這個變數在你的系統中設定正確。
右鍵單擊電腦——設定——進階系統設定——進階——環境變數。在該視窗的第二部分(在環境變數下),您可以找到您的變數溫迪爾指向%systemroot%
。將其更改為%SystemRoot%
,這是預設值並測試是否仍然出現錯誤。