
Windowsの「パスが長すぎます」エラーを最短で解決する方法:MAX_PATH(260文字)制限の正体と回避策まとめ
Windowsでファイルをコピー・移動・解凍しようとした瞬間に出る「パスが長すぎます」「ファイル名が長すぎます」といったエラー。原因は単純に“ファイル名が長い”だけではなく、フォルダー階層を含めたフルパス長が上限を超えているケースがほとんどです。この記事では、MAX_PATH(260文字)制限の仕組みから、現場で効く具体的な対処法、Windows 10/11での長いパス有効化手順まで、再発防止も含めて整理します。
- Windowsの「パスが長すぎます」エラーを最短で解決する方法:MAX_PATH(260文字)制限の正体と回避策まとめ
「ファイル名を短くするしかない」は誤り:本当の原因は“パス全体”
結論から言うと、Windowsが「パスが長すぎる」と言ってきたときにリネームだけが唯一の解決策ではありません。もちろんファイル名自体が異常に長い場合は短縮が効きますが、実際には次のような構造が原因になりがちです。
-
共有フォルダー配下に部署・案件・年度…とフォルダーが増え続けた
-
Zipを解凍したら、解凍先にさらに深い階層が大量にできた
-
開発環境(node_modulesなど)で階層が深くなりやすい
-
同期ツール(OneDrive等)のルートが長く、そこに深い構成を重ねた
つまり、問題は「ファイル名」よりも、ドライブ文字~フォルダー名~区切り記号~ファイル名まで全部を足した長さです。
MAX_PATH(260文字)制限とは何か:どこまでが“260”に含まれる?
Windowsには長年、Win32 API由来の互換性として、MAX_PATH = 260文字という制限がありました。ここで重要なのは、260文字に含まれるのが「ファイル名だけ」ではなく、次の要素が合計されたパス全体だという点です。
-
例:
C:\のようなドライブ文字 -
フォルダー名(階層すべて)
-
バックスラッシュ
\(区切り) -
ファイル名+拡張子
-
終端文字(内部的な扱い)
この合計が上限を超えると、コピー・移動・削除・解凍・アプリでの読み込みなどが失敗します。
ただし、現在のWindows 10/11ではOS側が長いパスに対応できる仕組みも用意されています(後述)。
まず効く“即効性のある”実務的対処法(OS設定を変えずに済む)
環境を変えられないPCや、社内ルールでレジストリ変更が難しい場合は、まず下の方法が現実的です。
1) フォルダー名を短くする(途中のどこでもよい)
パスは合計なので、深い階層のどこか1~2か所を短くするだけで解消することがあります。
「2026年度_第3四半期_最終版_承認済み」→「2026Q3_final」など、ルール化すると再発も抑えられます。
2) いったん浅い場所へ移動して作業する
最も手早いのは、対象ファイルやフォルダーを以下へ移すことです。
-
C:\temp\ -
C:\work\ -
デスクトップ直下(短いユーザー名なら有効)
解凍で失敗する場合も、解凍先を C:\temp\ にするだけで通ることがよくあります。
3) 深いサブフォルダーにドライブ文字を割り当てて短縮する
「見かけのパス長」を短くできる王道が、ドライブレター割り当てです。例えば深いフォルダーを X:\ として扱えます。
-
エクスプローラーから「ネットワークドライブの割り当て」
-
あるいはコマンド:
subst X: "C:\very\deep\folder\path"
subst はログオフで消える場合があるため、運用に合わせて使い分けます。
4) ツールを変える(robocopy等)
エクスプローラーが失敗しても、コマンド系ツールだと通ることがあります。代表例が robocopy。
また、古い制限を回避する手法として、拡張パス接頭辞 \\?\ を使う方法があります(ツール側が対応している必要があります)。
-
例(概念):
\\?\C:\very\long\path\...
「エクスプローラーでは無理、robocopyなら成功」という現場は珍しくありません。
根本対策:Windows 10/11で“長いパス”を有効化する(OS側の設定)
Windows 10 バージョン1607以降(Windows 11含む)では、OSとしてはより長いパス(理論上は非常に長い長さ)を扱える仕組みがあります。
ただし、重要な注意点が2つあります。
-
OS側で長いパスを許可していること
-
利用するアプリ(ツール)が長いパスに対応していること
OS側を有効化しても、古いアプリや非対応のツールでは挙動が変わらない場合があります。
方法A:グループポリシー(Pro/Enterprise等で使えることが多い)
-
Win + R→gpedit.mscを実行 -
ローカル コンピューター ポリシー→コンピューターの構成→管理用テンプレート→システム→ファイルシステム -
「Win32 の長いパスを有効にする」 を開く
-
「有効」 を選び、適用
-
再起動(またはサインアウト/サインイン)
方法B:レジストリ(Homeでも使えることが多い)
-
レジストリエディターを開く
-
次へ移動:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FileSystem -
LongPathsEnabled(DWORD 32-bit)を作成または編集 -
値を 1 にする
-
再起動
方法C:PowerShellで有効化(管理者で実行)
手入力を避けたい場合はPowerShellが確実です。管理者権限のPowerShellで以下を実行します。
-Name "LongPathsEnabled" -PropertyType DWord -Value 1 -Force
反映には再起動が無難です。
それでも直らないときのチェックポイント
長いパスを有効にしたのに改善しない場合、次を疑うと早いです。
-
使っているアプリが非対応(古い圧縮解凍ソフト、古いバックアップツール等)
-
ネットワーク共有(UNCパス)で、ツール側の制限に当たっている
-
途中に予約語や禁止文字など別要因が混ざっている
-
セキュリティソフトが操作をブロックしている
対策としては、別のツール(最新の解凍ソフト、robocopy等)を試す、いったんローカルへ移す、浅いディレクトリで作業する、が効果的です。
再発防止:フォルダー設計の“長さ予算”を決める
「長いパス問題」は一度解決しても、運用が同じだとまた起きます。再発防止には設計が効きます。
-
ルートを短く固定:
D:\proj\D:\data\のように浅い起点を作る -
フォルダー名は短く、意味は規則で担保(例:年月+短い識別子)
-
“最終版”が増殖しない命名ルール(final_final_最新版…を防ぐ)
-
解凍や生成物の置き場所を
C:\tempなど短い場所に統一
運用が整うと、「なぜかコピーできない」系の時間ロスが目に見えて減ります。
まとめ:リネームは手段の一つ、最適解は状況で変わる
Windowsの「パスが長すぎます」エラーは、ファイル名だけでなくパス全体が260文字を超えることで起きるのが基本です。
現場での最短ルートは、まず「浅い場所へ移す」「フォルダー名を短くする」「ドライブ割り当てで短縮する」。根本対策としては、Windows 10/11で長いパスを有効化し、対応ツールを使うことが有効です。
コピー・解凍・移動が詰まったときは、焦って名前だけを直す前に、まず“パス全体の長さ”を疑う。これだけで解決までの距離が一気に短くなります。