1

この質問を読んだ後、それはどういうわけか非現実的であると思うかもしれませんが、以下の状況は私たちの本番アプリケーションの1つにあります。

ユーザーの1人が、名前が長すぎるファイルをアップロードしようとするとエラーが発生することを報告しました。ファイル名をファイル拡張子を含めて255文字を超えないように制限することで、この問題を修正する必要があります。しかし、InternetExplorerにのみ存在する別の奇妙な動作に直面しました。

ユーザーが拡張子を含む長さが255文字のファイルをアップロードしようとすると、FileUploadはファイルを選択せず​​(つまり、ファイルを認識しません)、ファイル名を示すテキストボックスは空白のままになります。これはIE8、IE9、IE10で有効です。これは、ASP.NETまたはSharePointソリューションで有効です。

同じファイルをGMailにアップロードしようとしましたが、Internet Explorerを除くすべてのブラウザでアップロードできました。つまり、IEに関連するものです。

助言がありますか?修正はありますか?

4

1 に答える 1

0

残念ながら、これは Windows の "機能" のようです (実際にそうでしたか?)。

参照: http://msdn.microsoft.com/en-us/library/aa365247%28v=vs.85%29.aspx#maxpath

ローカル パスは、ドライブ文字、コロン、バックスラッシュ、バックスラッシュで区切られた名前コンポーネント、および終端のヌル文字の順序で構成されます。たとえば、ドライブ D の最大パスは "D:\some 256-character path string" です。"" は、現在のシステム コードページの非表示の終了ヌル文字を表します。

フルパスが260文字を超えるファイルの操作は避けるべきだと思いますが、

ファイル入力テキスト ボックスで「\?\」という非常に長い名前の接頭辞を使用しても機能するかどうかわかりません。

これが役立つことを願っています。

于 2013-02-15T16:47:14.140 に答える