1

阅读此问题后,您可能会认为这在某种程度上是不切实际的,但在我们的一个生产应用程序中存在以下情况。

我们的一位用户报告说,如果他尝试上传名称过长的文件,他会收到错误消息,我们必须通过将文件名限制为不超过 255 个字符(包括文件扩展名)来解决这个问题。但是我们遇到了另一种奇怪的行为,它只存在于 Internet Explorer 中。

如果用户尝试上传包含扩展名在内的长度为 255 个字符的文件,则 FileUpload 不会选择文件(即无法识别文件)并且显示文件名的文本框保持空白。这在 IE8、IE9 和 IE 10 中有效!这在 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 回答