web-dev-qa-db-ja.com

Windows 7のPATHと環境変数が破損している

わかりませんが、最近この問題に直面しています。私のワークステーションを走らせた後突然何かがPATHを破壊し、たくさんのものが動かなくなります。当初、私のパスにはたくさんのディレクトリがリストされていました(私は開発用ボックスとしてWindows 7を使っています)。しばらくしてから、私のパスには3-4ディレクトリしかリストされていませんでした。

環境変数を確認できる[システムのプロパティ]ダイアログを開くこともできません(シェル変数を使用して起動しても機能しないため)。つまり、毎回再起動します。

何がその問題を引き起こすかもしれないという考えはありますか?私は最近何も新しいものや変わったものを走らせなかった。唯一のVMware(ただし、私は過去にそれを使用していたし、当時はその問題を抱えていなかった)。

私はちょうど%WINDIR%が定義されていなくてもチェックしました。 WTF?

97
Pavel

私のブログから

つまり、PATH環境変数が2048文字を超えていると、多くのコンテキストでそれ(およびWINDIR)が見えなくなります。

私は手動でc:\ windows\system32\systempropertiesadvanced.exeを実行し、2048文字以下に私を置くために私のパスから1つのエントリを削除することによってそれを修正しました。新しいcmdウィンドウはちゃんと動きます。

更新:これ と同様の質問 2047が最大であると主張しており、拡張規則について詳しく述べている

127
Raven

2048文字の制限は本当です。私がしたことは、パスを2つの別々の変数に分割し、PATH変数に2番目の変数を含めることです。

PATH=C:\;%PATHEXTENDED%
PATHEXTENDED=E:\

そのように私はPATHディレクトリを削除する必要はありませんでしたが、2048文字以下のPATH変数を得ました。

23
Darth Vader

pathが多すぎるため、またはその他の理由で、この問題を解決しようとしている人すべてに対する回避策の修正:Explorerを再起動するだけです。新しいシェルは新しい環境を拾います。根本的な原因を特定して恒久的に解決することがまだできていなくても、これは当分の間、リブートする必要なしに破損を修正します。

1。

enter image description here

2。

enter image description here

3。

enter image description here

編集:新しいバージョンのWindowsに更新します。

タスクマネージャは今それを1つのステップで行います:

enter image description here

12
Reg Edit

レジストリキーを監視するプログラムを入手する必要があります。

ユーザー変数

HKCU\Environment

そして

機械変数

HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Environment

あなたは彼らが破壊された瞬間をつかみそれを絞り込むかもしれません。

また、起動後の所要時間それがいつ起こるかを少なくとも知ることができればそれは物事を絞り込むのに役立ちます。

セーフモードも試してください。プロセス関連の場合は、イベントビューアを確認してください。

3
barlop