-------- 2009/01/04 ----------- * Windows の フォルダー深さについて 色々な所で ウィンドウズのファイル名の長さ制限は確認されていると思います。 此は ウィンドウズの API の中の定数 MAX_PATH = 260 で解る様に Path + Name.ext が 260 文字( 半角 ) 以下を 表していて まさしくその通りこれ以上の長さの物を作ろうとしてもリジェクトされるしプログラム的にもバッファは MAX_PATH で確保しているのでこれ以上有ると誤動作してしまうでしょう。 それでは フォルダー深さの制限は ?? となると 色々調べたのですがはっきりしません。はっきりしない時には 試して見るしかない と言う事で試して見ると やはり トータルのパス長さが 260 文字までの様です。フォルダー 深さの制限は 各フォルダー名に短い名前を付けて見ると例えば下記の様な E:\D02\D03\D04\D05\D06\D07\D08\D09\D10\D11\D12\D13\D14\D15\D16\D17\D18\D19\D20\D21\D22\D23\D24\D25\D26\ D27\D28\D29\D30\D31\D32\D33\D34\D35\D36\D37\D38\D39\D40\D41\D42\D43\D44\D45\D46\D47\D48\D49\D50\D51\D52\ D53\D54\D55\D56\D57\D58\D59\D60\D61\D62 フォルダーを作成する事が出来ました Total で 248 文字 此に 8.3 ファイルで 260 文字ですが 0 部分が有りません。 E:\D02\D03\D04\D05\D06\D07\D08\D09\D10\D11\D12\D13\D14\D15\D16\D17\D18\D19\D20\D21\D22\D23\D24\D25\D26\ D27\D28\D29\D30\D31\D32\D33\D34\D35\D36\D37\D38\D39\D40\D41\D42\D43\D44\D45\D46\D47\D48\D49\D50\D51\D52\ D53\D54\D55\D56\D57\D58\D59\D60\D61\D62\F134567.txt 此がファイルを作成できる限界でした。長さ 259 文字 やはり MAX_PATH -1 = 259 で合っています。( 2K XP Vista ) 従って トータルのフォルダー深さの制限は無くてトータルのパスの文字数制限と言う事になりそうです。まあ通常 60 の深さと言うのはどうかと思いますし 此の深さを プログラム的にサポートするのも ??? と言う気がします。 此の様な事をしている中にもう一つの制限に気がつきました。それは通常のポップアップメニューの深さの制限が 有りそうだという事です。上記のフォルダーを先頭から SbFolder で追っていくと D23 の次のメニューが変になって います。そう ポップアップメニューを作ろうとするとフェイルしてしまうのです。Vista では ポップアップメニュー も出してくれません。此を D2 からすると D25 が変になります。結局 一つのポップアップメニューの持てる深さの 制限が有り 大体 24 ぐらいの所の様です。 SbFolder は 32 までの深さを考慮していますが 頭から開けらるのは メニューで深さで 24 まででそこから又新たに 始めれば プログラムの想定限界 32 まで使用出来ますが 実際に作成できるメニュー深さ 60 以上は全てについて サポートすると言うのは実用的なバッファ確認ループの数等を考えると出来そうも有りません。実用的な所で現在の 深さ 32 まで 又 ポップアップメニュー作成時のフェイルには ( 限界深さ ) その都度対処していくしかなさそうです。 以上書いて来た事は MAX_PATH 以外は公式的な事ではありません。単に私が持つ Window 2000 XP Vista 環境で 調べた物で他の環境では違う結果になるかもしれません。