Windows10でファイルやフォルダを移動/削除/コピー/名前変更の操作をしようとすると、「対象のパスが長すぎます。ファイル名の長さは、対象のフォルダーに対して長すぎる可能性があります。」のエラーが発生することがあります。エラーは圧縮ファイルの展開/解凍時にも発生することがあります。
エラーが発生すると、ファイルやフォルダの操作ができない状態になってしまうため対処が必要です。
今回は、Windows10で「対象のパスが長すぎます」のエラーが出た時の原因と対処法について詳しく紹介します。重要なファイルでエラーが発生して困っている場合は、参考にしてみてください。
この記事の内容
「対象のパスが長すぎます」エラーの原因
ファイル/フォルダの操作時に「対象のパスが長すぎます」や「ソースパスが長すぎます」のエラーが出る場合、主に次の原因が考えられます。
- ファイル/フォルダの絶対パスが259文字を超えている
- 絶対パスは、親フォルダを含めたファイルやフォルダの場所のことです。(例: C:\hoge\hugaなど)
- ファイル/フォルダの名前が255文字を超えている
上記はWin32APIによって制限されており、操作するファイル/フォルダの名前もしくは絶対パスが長すぎることでエラーが発生します。
そのため、ファイル/フォルダや親フォルダの名前を変更するか、Windowsの設定で制限を解除する必要があります。
ファイルの移動/削除/コピー/名前変更などの操作ができない場合は、紹介する対処方法を順に試してください。
圧縮ファイルの展開時にエラーが出る場合は、『対処8: ファイルの展開先を変更する』の方法を試してください。
対処1: 親フォルダの名前を変更する
「対象のパスが長すぎます」のエラーは、ファイルやフォルダの絶対パスが長すぎることで発生します。
そのため、エラーの出ているファイル/フォルダの上の階層の親フォルダを短い名前に変更して、絶対パスを259文字以下にすることで解決できます。
エクスプローラで親フォルダの名前を変更するには、次の手順で操作してください。
- エクスプローラーを起動して、エラーが発生するファイル/フォルダがある場所を開きます。
- エクスプローラーの「←」をクリックして一つ前の階層のフォルダに戻ります。
- 親フォルダの名前が長い場合は「親フォルダ」を右クリック→「名前の変更」を選択して、短い名前に変更してください。
- 絶対パスが259文字以下になるまで、同じ手順でさらに上の階層の親フォルダの名前を短くします。
親フォルダの名前を変更できたら、ファイル/フォルダを操作して「対象のパスが長すぎます」のエラーが出なくなったことを確認してください。
変更してもエラーが出る場合は、まだ絶対パスの文字数がオーバーしています。フォルダの階層が多すぎたり、親フォルダの名前が変更できない場合は、次の対処に進んでください。
対処2: ネットワークドライブに割り当てる
ファイル/フォルダのパスが長い場合は、親フォルダをネットワークドライブに割り当てることでエラーを解決することもできます。
そのため、名前の変更でエラーを解決できない場合は、ネットワークドライブの割り当てを試してみてください。
親フォルダをネットワークドライブに割り当てるには、次の手順で操作します。
- 「Windowsマーク」を右クリックして「システム」を選択します。
- 右ペインをスクロールして、デバイスの仕様の「デバイス名」を確認します。
- エクスプローラーを起動して、エラーが発生するファイル/フォルダがある場所を開きます。
- 「アドレスバー」をクリックして「親フォルダのパス」をコピーします。
- 左のツリーで「PC」をクリックします。
- 「コンピュータ」リボンをクリックして、「ネットワークドライブの割り当て」→「ネットワークドライブの割り当て」の順にクリックします。
- 「フォルダー」の項目に、コピーした「親フォルダのパス」を貼り付けます。
- 先頭に「\\デバイス名\」を追加して、ドライブ文字の「:」を「$」に変更します。
- 例: C:\Users\username\hoge\huga の場合は、以下のように変更します。
\\devicename\C$\Users\username\hoge\huga
- 例: C:\Users\username\hoge\huga の場合は、以下のように変更します。
- 「サインイン時に再接続する」のチェックを外して「完了」をクリックします。
- 指定した親フォルダがネットワークドライブに追加されます。
ネットワークドライブに追加できたら、親フォルダを開いてファイル/フォルダの操作ができるか確認してください。
ネットワークドライブに追加したフォルダは、エクスプローラー左のツリーからアクセスすることができます。不要になった場合は、ネットワークドライブを右クリックして「切断」を選択してください。
対処3: シンボリックリンクを作成する
親フォルダのシンボリックリンクを作成することで、ファイル/フォルダのパスが長いエラーを解決することもできます。
親フォルダのシンボリックを作成するには、次の手順で操作します。
- 「Windowsマーク」をクリックして検索バーを開き、「cmd」と入力します。
- 検索結果の「コマンドプロンプト」を右クリックして「管理者として実行」を選択します。
- 次のコマンドを入力してEnterキーで実行します。
mklink /d シンボリックリンクの作成先フォルダのパス 親フォルダのパス
- 例: 以下のコマンドを実行すると、Cドライブ直下にシンボリックリンクを作成します。
mklink /d C:\link C:\Users\username\hoge\huga
- 例: 以下のコマンドを実行すると、Cドライブ直下にシンボリックリンクを作成します。
以上でシンボリックリンクが作成できます。作成したシンボリックリンクを開いて、ファイル/フォルダの操作ができるか確認してください。
対処4: Win32の長いパスを有効にして制限を解除する
Windows10のバージョン1607以降では、最大32767文字の絶対パスが利用できるように設定することができます。
そのため、パスの設定を変更することで、名前や絶対パスが長いファイル/フォルダであってもエラーが出ずに操作できます。
パスの上限を長くするには、グループポリシーもしくはレジストリの設定を変更します。それぞれの手順は次の通りです。
方法1: グループポリシーで設定する
Windows10 Proエディションの場合は、次の手順でグループポリシーから設定することができます。
- 「Windowsマーク」を右クリックして「ファイル名を指定して実行」を開きます。
- 「gpedit.msc」と入力してEnterキーを押し、グループポリシーエディタを起動します。
- 左ペインで以下の順にツリーを展開します。
- コンピュータの構成 > 管理用テンプレート > システム > ファイルシステム
- 右ペインのポリシーの一覧で「Win32の長いパスを有効にする」をダブルクリックします。
- 「有効」を選択して「OK」をクリックします。
- PCを再起動してグループポリシーを反映します。
方法2: レジストリで設定する
Windows10 Homeエディションの場合は、次の手順でレジストリの変更を行なってください。
- 「Windowsマーク」を右クリックして「ファイル名を指定して実行」を開きます。
- 「regedit」と入力して「OK」をクリックします。
- 左のツリーを展開して次のキーに移動します。
コンピューター\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FileSystem
- 左ペインで「FileSystem」キーを選択して、右ペインで「LongPathsEnabled」の値をダブルクリックします。
- 値のデータを「1」に変更して「OK」をクリックします。
- PCを再起動してレジストリを反映します。
設定変更後にPCが起動できたら、ファイル/フォルダが正常に操作できるようになったか確認してください。
対処5: 8.3形式の名前を指定して変更する
ファイル名やフォルダ名が長すぎてエラーが出る場合は、8.3形式の名前を指定することで名前を変更することができます。
そのため、エラーの出ているファイル/フォルダの8.3形式の名前を指定して短い名前に変更してください。
8.3形式の名前を指定して名前の変更を行うには、次の手順でコマンドプロンプトを使って変更します。
- エクスプローラーを開いて、エラーの出るファイル/フォルダの親フォルダを開きます。
- 「アドレスバー」をクリックして、パスを消去して「cmd」と入力し、Enterキーを押します。
- コマンドプロンプトが起動したら、コマンド「dir /x」を入力してEnterキーで実行します。
- フォルダ内のファイル/フォルダのリストが表示されます。
- エラーの出るファイル/フォルダの「8.3形式の名前」を確認します。
- 8.3形式の名前は「~」が付いている文字列です。(例: xxxxxx~1)
- renameコマンドを入力してEnterキーで実行します。
rename "変更するファイル/フォルダの8.3形式の名前" "変更後の名前"
- 例: rename "FILEAA~1.ZIP" "file.zip"
以上の手順で、エラーの出るファイル/フォルダ名を変更することができます。
名前が変更できたら、ファイル/フォルダが操作できる状態になったか確認してください。
対処6: xcopyコマンドでファイル/フォルダをコピーする
ファイル/フォルダの絶対パスが長すぎて操作できない場合は、別の階層にコピーすることでエラーを解決することもできます。
ただし、通常の操作でコピーすることはできないため、xcopyコマンドを実行してファイル/フォルダのコピーを行います。
xcopyコマンドでコピーを実行するには、次の手順で操作します。
- 「Windowsマーク」を押して検索バーを開き、「cmd」と入力します。
- 検索結果の「コマンドプロンプト」を右クリックして「管理者として実行」を選択します。
- xcopyコマンドを入力してEnterキーで実行します。
xcopy "元のファイル/フォルダの絶対パス" "コピー先フォルダの絶対パス" /O /X /E /H /K
- コピー先の絶対パスの文字列が長くならないように、ドライブ直下などにフォルダを作成してコピーすることをおすすめします。
xcopy "C:\Users\username\hooooooge\hugaaaaaaa.zip" "C:\copy\huga.zip"
- コピー先の絶対パスの文字列が長くならないように、ドライブ直下などにフォルダを作成してコピーすることをおすすめします。
- コピー完了のメッセージが表示されたら、コマンドプロンプトを閉じます。
コピーが完了したら、コピー先のフォルダを開いて正常にファイルを操作できることを確認してください。
対処7: 拡張子をテキスト形式に変更する
ファイルの移動時に「対象のパスが長すぎます」のエラーが発生する場合は、拡張子をテキスト形式(.txt)に変更することで問題が解決する可能性があります。
そのため、次の手順でファイルの拡張子を変更してから移動の操作を試してみてください。
- エクスプローラーの「表示」リボンをクリックして「ファイルの拡張子」にチェックを入れます。
- エラーの出る「ファイル」を右クリックして「名前の変更」を選択します。
- ファイル名を「ファイル名.txt」に変更してEnterキーを押します。
以上で拡張子の変更は完了です。ファイルが移動できるか確認してください。
移動が完了したら「ファイル」を右クリックして「名前の変更」を選択し、元の拡張子に戻してください。
対処8: ファイルの展開先を変更する
圧縮ファイルの展開/解凍時に「対象のパスが長すぎます」のエラーが発生する場合は、展開先の絶対パスが長すぎることが考えられます。
そのため、絶対パスが短くなるように展開先のフォルダを変更してファイルを展開してみてください。展開後の絶対パスが259文字以下であれば、正常に展開できるはずです。
ファイルの解凍ソフトを使用していて同一フォルダに解凍されてしまう場合は、右クリックメニューなどからフォルダを指定して解凍してください。
展開先のフォルダを変更してもエラーが解決しない場合は、『対処4: Win32の長いパスを有効にする』の方法を試してください。