MFI が長いパス長を処理できるようにするこのウィッシュリストのリクエストのきっかけは何ですか?
複数のファイルのインポートでは、長いファイルパスに達すると処理が完全に停止し、フォルダー内のファイルが表示されない
どのような改善を望みますか? JMP で次のいずれかを実行します。
- MFI を更新して、パス長が長すぎるファイルを省略またはグレー表示し、他のすべてのファイルは処理するようにします。
- JMP アプリケーション マニフェストを更新して、より長いパス長を許可し、レジストリ設定がオンになっているユーザーがより長いパスを利用できるようにします。
このアイデアはなぜ重要なのでしょうか?
この特定のケースでは、フォルダー パスが長く、フォルダー内の特定のファイルが Windows の 260 文字制限を超えています。その結果、MFI はフォルダー内の最初の 14 ファイルのみを表示しました (15 番目のファイルがルールに違反した最初のファイルです)。ただし、フォルダー内には問題のないファイルが多数ありました。MFI はそれらのファイルを表示できるはずです。
さらに、前述の Windows の記事 ( https://learn.microsoft.com/en-us/windows/win32/fileio/maximum-file-path-limitation?tabs=registry ) によると、ユーザーはレジストリで長いパス長をオンにすることができますが、アプリケーション マニフェストも更新する必要があります。記事によると、これは JMP が制御するもののようです。
リストされている最初のオプションは、単に try() をシステムに組み込むだけなので、処理できないファイルはリストされませんが、より長くてより良い解決策は、ユーザーが正しいレジストリ キーを持っている限り JMP が長いパス長を使用できるようにする後者のオプションです。
データアクセスRe: MFI が長いパス長を処理できるようにするこれに加えて、答えは最初の選択肢よりも 2 番目の選択肢にあるかもしれないと示唆します。
Names default to here(1);
dir = Pick Directory();
files = FilesinDirectory(dir);
上記のスクリプトを実行して問題のあるフォルダーに移動すると、ファイル変数にはパスの長さを超える前の最初の数個のファイルのみが設定されます。したがって、この問題は、JMP がファイル アクセスに Windows API を使用する方法に関係しているようです。
したがって、唯一の解決策はオプション 2 である可能性があります。
Re: MFI が長いパス長を処理できるようにする - ステータスが「確認済み」に変更されました