Windowsで「宛先フォルダのファイル名が長すぎます」エラーが出たときの原因と解決法
Windowsパソコンでバックアップファイルやフォルダを整理していたところ、もう不要になった古いバックアップファイルを見つけました。圧縮された.tarファイルだったので、さっそく削除しようとしたのですが、そこで次のようなエラーメッセージが表示されてしまいました。
「宛先フォルダのファイル名が長すぎます」というエラーとは

この圧縮ファイルの中にはJPG画像ファイルが含まれており、Windowsはそのファイルだけを削除できませんでした。「スキップ」オプションを使えば、問題のファイル以外はすべて削除できます。では、なぜこのような現象が起きるのでしょうか。
原因はWindowsのパス長制限(MAX_PATH)
標準的なWindowsのファイル命名規則では、フォルダのパス+ファイル名+拡張子を合わせた全体の文字数が259文字を超えてはいけないことになっています。この上限を超えたパスを持つファイルを削除しようとすると、今回のようなエラーが発生します。
最大パス長の制限について:Windows APIでは(後述の例外を除き)、パスの最大長はMAX_PATHとして定義された260文字です。ローカルパスは「ドライブ文字、コロン、バックスラッシュ、バックスラッシュで区切られた名前要素、終端のNULL文字」という構造になっています。たとえばDドライブでの最大パスは「D:\some 256-character path string
」のようになります(< >は視認性のための記号であり、実際のパスには使えません)。――MSDNより
関連記事:WindowsでWin32の長いパスを有効にする方法
実際に発生したケース
私の場合、問題のファイルまでの完全なフォルダパスは以下のように非常に長いものでした。
D:\Site Backups\Misc\backup-4.7.2012_23-41-31_thegadget.tar\backup-4.7.2012_23-41-31_thegadget\backup-4.7.2012_23-41-31_thegadget\homedirect\2\public_html2\wp-content2\uploads\2011\08
さらにファイル名自体も「Music-producer-…-and-video-games.jpg」のようにかなり長く、画像の通りです。
まずファイルの場所を開いて削除や名前の変更を試みましたが、そもそもその操作を選択することすらできませんでした。名前を変更できれば話は早いのですが、選択肢すら表示されない状態でした。
次に、ひとつ上のサブフォルダへ戻ってから削除を試みましたが、結果は同じ。まったく成功しません。
解決策:「フォルダへ移動」でパスを短くする
そこで試したのが、「フォルダへ移動(Move To folder)」機能を使って、問題のフォルダごとDドライブ直下へ移動する方法です。すると見事に成功しました。移動によってパスが一気に短くなり、ファイルを削除できるようになったのです。
このシンプルなテクニックで私のケースは解決しました。同じエラーでお困りの方にも役立つはずです。
その他の対処方法
上記の方法でうまくいかない場合は、以下の方法も試してみてください。
- PCの再起動やチェックディスク(Check Disk)の実行
- 削除できないファイル・フォルダに対応したサードパーティ製のフリーウェアの利用
- フリーウェアLong Path Fixerを使って「パスが長すぎる」エラーを修復する
- どうしても解決しない場合は、CMDやRobocopyを使った高度な手法が紹介されているMicrosoftのサポートスレッドを参照する
関連記事:「ソース ファイル名はファイル システムでサポートされているサイズより大きくなっています」エラーの対処法

-
【Windows】「Windows はこのファイルのデジタル署名を検証できません」エラー(コード52)の直し方
USBポートに接続したハードウェアが認識されず、「Windows はこのファイルのデジタル署名を検証できません」というメッセージとともにエラーコード52が表示されることがあります。エラー名が示すとおり、この問題はデジタル署名に関連しており、Windowsのアップグレード後やデバイスマネージャーでドライバーに異常が発生した後に表示されるケースが多いです。 デジタル署名とは? Windowsは有効なデジタル署名を使って、以下の情報を検証しています。 ファイルまたはファイル群(ドライバーパッケージなど)が署名されていること 署名者が信頼できること 署名者を認証した認証局が信頼できること 公開後に
-
Windows 10で「宛先のファイルシステムに対してファイルが大きすぎます」エラーを解決する方法
exFAT、FAT32、FAT、NTFSといったファイルシステムに詳しい方ならご存じのとおり、ファイルシステムとは、OSがディスク上のファイルを検索・整理するために使用する専用の構造のことです。しかし、これらのファイルシステムにはそれぞれ制限があります。たとえば、FAT32形式のハードドライブに4GBを超えるファイルをコピーまたは移動しようとすると、「宛先のファイルシステムに対してファイルが大きすぎます(File Is Too Large For The Destination File System)」という厄介なポップアップが表示されます。 この記事では、FAT32ファイルシステムの制限に