Win 7 64 ビットで %windir% を解決できません

Win 7 64 ビットで %windir% を解決できません

ラップトップに問題があります。%windir% 環境変数を解決できません。ネットで調べたところ、PATH 変数の長さは 2024 文字未満でなければならないことがわかりました。私のは 3145 です。問題は、私のラップトップが開発マシンで、Visual Studio の 4 つの異なるバージョンと SQL Server の 3 つ、そして PATH 変数に独自のパスを追加する多数のプログラミング ツールが搭載されていることです。縮小できないと、何かが機能しなくなります。VS と MSSQL のすべてのバージョンも保持する必要があります。

この問題を回避するために何かできることはありますか?

あなたの時間と助けに感謝します

私の PATH 変数は次のとおりです:

%SystemRoot%\system32;
%SystemRoot%;
%SystemRoot%\system32\wbem;
C:\Program Files (x86)\Rockwell Software\RSCommon;
C:\Program Files (x86)\Intel\iCLS Client;
C:\Program Files\Intel\iCLS Client;
%SYSTEMROOT%\System32\WindowsPowerShell\v1.0;
C:\Program Files\Intel\Intel(R) Management Engine Components\DAL;
C:\Program Files\Intel\Intel(R) Management Engine Components\IPT;
C:\Program Files (x86)\Intel\Intel(R) Management Engine Components\DAL;
C:\Program Files (x86)\Intel\Intel(R) Management Engine Components\IPT;
C:\Program Files (x86)\Intel\OpenCL SDK\3.0\bin\x86;
C:\Program Files (x86)\Intel\OpenCL SDK\3.0\bin\x64;
C:\Program Files\Lenovo\Fingerprint Manager Pro;
C:\Program Files (x86)\Common Files\Lenovo;
C:\Program Files\Intel\WiFi\bin;
C:\Program Files\Common Files\Intel\WirelessCommon;
C:\Program Files\Microsoft SQL Server\100\Tools\Binn;
C:\Program Files\Microsoft SQL Server\100\DTS\Binn;
C:\Program Files (x86)\Microsoft SQL Server\100\Tools\Binn\VSShell\Common7\IDE;
C:\Program Files (x86)\Microsoft SQL Server\100\DTS\Binn;
C:\Program Files\Microsoft SQL Server\110\DTS\Binn;
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\Tools\Binn\ManagementStudio;
C:\Program Files (x86)\Microsoft SQL Server\110\DTS\Binn;
C:\Program Files (x86)\Common Files\Rockwell;
C:\Program Files (x86)\Microsoft SQL Server\80\Tools\Binn;
C:\Program Files\Microsoft SQL Server\90\DTS\Binn;C:\Program Files\Microsoft SQL Server\90\Tools\binn;
C:\Program Files (x86)\Microsoft SQL Server\90\Tools\binn;
C:\Program Files (x86)\Microsoft SQL Server\90\DTS\Binn;
C:\Program Files (x86)\Microsoft SQL Server\90\Tools\Binn\VSShell\Common7\IDE;
C:\Program Files (x86)\Microsoft Visual Studio 8\Common7\IDE\PrivateAssemblies;
C:\Program Files (x86)\GtkSharp\2.12\bin;
c:\Program Files\Microsoft SQL Server\90\Tools\binn\;
c:\Program Files (x86)\Microsoft SQL Server\90\Tools\binn\;
c:\Program Files\Microsoft SQL Server\90\DTS\Binn\;
c:\Program Files (x86)\Microsoft SQL Server\90\DTS\Binn\;
c:\Program Files (x86)\Microsoft SQL Server\90\Tools\Binn\VSShell\Common7\IDE\;
c:\Program Files (x86)\Microsoft Visual Studio 8\Common7\IDE\PrivateAssemblies\;
C:\Program Files (x86)\Common Files\lenovo\easyplussdk\bin;
C:\Program Files\JAI\SDK\bin;
C:\Program Files\JAI\SDK\bin\Win32_i86;
C:\Program Files\JAI\SDK\GenICam\bin\Win64_x64;
C:\Program Files\JAI\SDK\GenICam\bin\Win32_i86;
C:\Program Files (x86)\Microsoft SQL Server\110\DTS\Binn\;
C:\Program Files\Microsoft SQL Server\110\DTS\Binn\;
C:\Program Files\Lenovo\Fingerprint Manager Pro\;
C:\Program Files\Microsoft\Web Platform Installer\;
C:\Program Files (x86)\Microsoft ASP.NET\ASP.NET Web Pages\v1.0\;
C:\Program Files (x86)\Windows Kits\8.0\Windows Performance Toolkit\;
C:\Program Files (x86)\Microsoft SQL Server\100\Tools\Binn\VSShell\Common7\IDE\;
C:\Program Files (x86)\Microsoft SQL Server\100\Tools\Binn\;
C:\Program Files\Microsoft SQL Server\100\Tools\Binn\;
C:\Program Files (x86)\Microsoft Visual Studio 9.0\Common7\IDE\PrivateAssemblies\;
C:\Program Files (x86)\Microsoft SQL Server\100\DTS\Binn\;%HALCONROOT%\bin\%HALCONARCH%;%HALCONROOT%\FLEXlm\%HALCONARCH%

(改行は私が追加しました)

答え1

PATH 変数をクリーンアップし、適切な PATH 変数を設定する独自の「スタートアップ スクリプト」で各 IDE (Visual Studio など) を実行できると思います。

set PATH=%PATH%;C:\Program Files (x86)\Microsoft SQL Server\90\Tools\binn
start "C:\Program Files (x86)\Microsoft Visual Studio 9.0\Common7\IDE\devenv.exe"

この方法で PATH の長さを制限できます。

答え2

パスを短くする必要がある場合、1 つの解決策として、見苦しい 8.3 MS-DOS スタイルの名前を使用することが考えられます。つまり、 の代わりに、 (50 文字ではなく 22 文字、つまり 56% 短い)C:\Program Files (x86)\Microsoft Visual Studio 9.0のような名前を使用できますC:\Progra~2\Micros~1.0。実際の名前については、たとえばコマンド プロンプトから を使用して、システムで確認する必要がありますdir /x。この方法では、PATH変数はかなり読みにくくなりますが、長い名前のパスが多数ある場合は、おそらく 2024 文字の制限を下回る程度に大幅に短縮されるはずです。

答え3

この質問は非常に関連性があります:パス変数内のフォルダが多すぎます、 そして答えの一つ回避策としてディレクトリジャンクションの使用を提案します:

上記の解決策は私にはうまくいかなかったので、ディレクトリジャンクション:

  • PATH 内の最も長いパスをいくつか選択します (いいねC:\Program Files (x86)\Microsoft SQL Server\100\Tools\Binn\VSShell\Common7\IDE\)
  • ジャンクションを保存するための小さなフォルダを作成します: c:\d\
  • 長いパスに短いジャンクションを作成します。

mklink /jc:\d\sql "C:\Program Files (x86)\Microsoft SQL Server\100\Tools\Binn\VSShell\Common7\IDE\"

これを 15 個のパスに対して実行すると、PATH が 2045 文字から 1285 文字に削減されました。

最終的にマシンからものをアンインストールするときに、ジャンクションがパス内に残り、手動でクリーンアップする必要があるため、問題が発生する可能性があります。

関連情報