コマンドプロンプトで「CMD では UNC パスは現在のディレクトリとしてサポートされません。」
Windows XP のコマンドプロンプトで CD コマンドで UNC パスを利用しようとすると次のようなメッセージが出て失敗します。
C:\>cd \\server1\tmp\ '\\server1\tmp\' CMD では UNC パスは現在のディレクトリとしてサポートされません。
これを回避するためには、net use コマンドでネットワークドライブの割り当てをすればよいのですが、一々面倒です。その場合には PUSHD コマンドを使うと、ネットワークドライブの割り当てを自動でしてくれます。
C:\>pushd \\server1\tmp Z:\>
ドライブレターは Z: から Y:, X: と自動的に空いているものが割り振られます。POPD コマンドを使うと、ネットワークドライブの割り当てが解除され、もとのディレクトリに戻ります。
また、ネットワーク上に置かれたバッチファイルを UNC パス上から実行したときに、「上記の現在のディレクトリで CMD.EXE を開始しました。UNC はサポートされません。Windows ディレクトリを規定で使用します。」のメッセージが出ることがあります。
これについては、レジストリの設定で回避することができます。\HKEY_CURRENT_USER\Software\Microsoft\Command Processor に DisableUNCCheck という DWORD 値を作成し 1 をセットします。
これで、ネットワークパス上のバッチファイルで、UNC パスが利用できるようになります。上記は HKEY_LOCAL_MACHINE で設定すれば、ユーザごとではなく PC 全体の設定となります。なお、このレジストリ設定をしても CD コマンドでカレントディレクトリに UNC パスを設定することはできません。
規定するの?
コメント by BlogPetのusausa — 2009-10-28 14:14