無法解析 %windir% / 無法修改 %path% 或在啟動時重設 %path%

無法解析 %windir% / 無法修改 %path% 或在啟動時重設 %path%

請參閱下面的更新 3 和 4 以了解問題的演變過程


我的電腦(Windows 7 x64、Lenovo Thinkpad T530)在解決 %windir% 時遇到問題。啟動後,一切正常。過了一段時間後,計算機突然無法解析 %windir%。

控制台視窗

檢查環境變數視窗顯示它已定義。

環境變數

檢查註冊表也顯示它也已定義。我其實已經刪除密鑰並重新輸入無濟於事。

登記處

重新啟動後,一段時間內一切正常。有人對我可以檢查的其他事情有什麼想法嗎?


更新1: 經過一番思考後,我卸載了此問題開始發生時安裝的柯尼卡美能達 Pagebox 驅動程式/程式(請參閱下面的評論)。該問題似乎需要大約 4-24 小時(我從未計時)才會顯現,因此我會在那之後再次更新。

更新2: 問題仍然發生。我吃完午餐回來,找不到 %windir%。今天早上重新啟動後我做了一個測試,讓電腦進入睡眠狀態,然後將其喚醒。喚醒後%windir%仍然被定義。

更新3: 根據評論中的丹尼爾,我set在錯誤之前和之後運行並比較了輸出。我注意到的第一件事是,穿上新靴子後,我的%path% 長度超過 2000 個字符。我將其削減至約 375 個字符,並在新的 cmd 視窗中進行了驗證。我重新啟動,再次檢查路徑,它又回到了超過 2000 個字元(它與我最初看到的相符)。我再次截斷它並再次重新啟動,同樣的事情發生了。我刪除了路徑變數並創建了一個新變數;同樣的事情發生了。此時,我可以得出的結論是,要么我無法永久更改我的路徑,要么路徑正在由啟動時的某個進程重置。有什麼想法嗎?

更新4: 我透過下面建議的註冊表方法編輯了我的路徑。今天運行了一段時間後檢查了我的路徑,它已經從我在註冊表中輸入的內容增長了;現在它有一些新條目和很多重複項。唯一的新條目來自 SQL Server 2012 echo %path%。從「進階屬性」標籤檢查環境變數顯示了我的路徑的第三個版本。

Registry Path:
C:\Program Files (x86)\Microchip\mplabc30\v3.30\bin;
C:\RUBY193\BIN;
C:\Windows\SYSTEM32;
C:\Windows;
C:\Windows\SYSTEM32\WBEM;
C:\PROGRAM FILES\COMMON FILES\LENOVO;
C:\SWTOOLS\READYAPPS;
C:\PROGRAM FILES (X86)\COMMON FILES\LENOVO;
C:\PROGRAM FILES (X86)\MICROCHIP\MPLAB C32 SUITE\BIN;
C:\HTSOFT\PIC18\BIN;
C:\PROGRAM FILES\TORTOISESVN\BIN;
C:\Windows\System32\WindowsPowerShell\v1.0\;
C:\Program Files (x86)\Microsoft SQL Server\110\Tools\Binn\ManagementStudio\;
C:\Program Files (x86)\Microsoft SQL Server\110\Tools\Binn\;
C:\Program Files\Microsoft SQL Server\110\Tools\Binn\;
C:\Program Files (x86)\Microsoft SQL Server\110\DTS\Binn\;

Command Line path:
C:\Program Files (x86)\Microchip\mplabc30\v3.30\bin;
C:\RUBY193\BIN;
C:\Windows\SYSTEM32;
C:\Windows;
C:\Windows\SYSTEM32\WBEM;
C:\PROGRAM FILES\COMMON FILES\LENOVO;
C:\SWTOOLS\READYAPPS;
C:\PROGRAM FILES (X86)\COMMON FILES\LENOVO;
C:\PROGRAM FILES (X86)\MICROCHIP\MPLAB C32 SUITE\BIN;
C:\HTSOFT\PIC18\BIN;
C:\PROGRAM FILES\TORTOISESVN\BIN;
C:\Windows\System32\WindowsPowerShell\v1.0\;
C:\Program Files (x86)\Microsoft SQL Server\110\Tools\Binn\ManagementStudio\;
C:\Program Files (x86)\Microsoft SQL Server\110\Tools\Binn\;
C:\Program Files\Microsoft SQL Server\110\Tools\Binn\;
C:\Program Files (x86)\Microsoft SQL Server\110\DTS\Binn\;
C:\Program Files(x86)\Microchip\mplabc30\v3.30\bin;
C:\RUBY193\BIN;
C:\Windows\SYSTEM32;
C:\Windows;
C:\Windows\SYSTEM32\WBEM;
C:\PROGRAM FILES\COMMON FILES\LENOVO;
C:\SWTOOLS\READYAPPS;
C:\PROGRAM FILES (X86)\COMMON FILES\LENOVO;
C:\PROGRAM FILES (X86)\MICROCHIP\MPLAB C32 SUITE\BIN;
C:\HTSOFT\PIC18\BIN;
C:\PROGRAM FILES\TORTOISESVN\BIN;
C:\Windows\System32\WindowsPowerShell\v1.0\;

Environment Variables path:
C:\Program Files (x86)\Microchip\mplabc30\v3.30\bin;
C:\RUBY193\BIN;
C:\Windows\SYSTEM32;
C:\Windows;
C:\Windows\SYSTEM32\WBEM;
C:\PROGRAM FILES\COMMON FILES\LENOVO;
C:\SWTOOLS\READYAPPS;
C:\PROGRAM FILES (X86)\COMMON FILES\LENOVO;
C:\PROGRAM FILES (X86)\MICROCHIP\MPLAB C32 SUITE\BIN;
C:\HTSOFT\PIC18\BIN;
C:\PROGRAM FILES\TORTOISESVN\BIN;
C:\Windows\System32\WindowsPowerShell\v1.0\;

看起來好像命令列路徑=登錄路徑+環境變數路徑。我嘗試將註冊表路徑和環境變數路徑設定為相同的內容並重新啟動。重新啟動後,我的路徑現在加倍了,基本上是上面註冊表路徑的兩個背對背副本。

再說一次,有什麼想法嗎?

更新5:在與 IT 經理交談後,他說他正在另一台電腦上解決類似的問題。兩台電腦都有 SSD(似乎是唯一的共同點)。這可能相關,也可能不相關。

答案1

我遇到了同樣的問題,首先發現了這個問題。然而,這個問題中還沒有提到真正的原因/解決方案,但這裡提到了:Windows 7 的 PATH 和環境變數已損壞

解決方案摘要:確保您的路徑小於 2048 個字元。簽入使用者變數和系統變數。

答案2

使用 GUI,設定您的%windir%可變內容%系統根目錄%

至於你的%path%,你可以用登錄編輯程式解決這個問題:

  • 啟動Regedit.exe
  • HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment
  • 在右側窗格中,按兩下該值Path (REG_EXPAND_SZ)
  • 根據需要更改值並重新啟動

在此輸入影像描述

答案3

我的聯想 TS530 也有同樣的問題。安裝新程式後開始出現這種情況,導致我的小路比以前更長,因此安裝人員將新內容添加到了開頭小路定義。我編輯了小路雷吉特透過將 %SystemRoot% 移到路徑定義的開頭。

path = %SystemRoot%\system32;%SystemRoot%;%SystemRoot....

另外,我編輯了環境變量溫迪爾

windir= C:/Windows

windir=C:\Windows

這似乎已經解決了問題。 (有可能我之前在嘗試解決問題時犯了反斜線錯誤。或者安裝程式已經更改了它。)

答案4

PATH正如 @Pieter-Jan Busschaert 已經提到的,這很可能是因為環境變數損壞或太長。

解決此問題的最簡單方法是下載快速環境編輯器。它會向您顯示您的設定有什麼問題PATH,並讓您立即修復它。

相關內容