微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

c# – 文件解析为太长的路径.最大长度为260个字符

我在运行 Windows 7的Fujitsu平板电脑上运行C#.NET WPF应用程序,访问安装在用户的AppData文件夹中的sql Server CE 3.5数据库.
此应用程序可在其他相同类型的平板电脑上以及普通笔记本电脑或台式机上正常运行.

当应用程序在一个特定的平板电脑上运行时,我收到错误

The file resolves to a path that is too long. The maximum length is 260 characters 
[File name = c:\Users\tester\AppData\Roaming\Fourmative\AppDatabase\MyDatabase#1.sdf]

现在,我已经了解了Windows路径名的限制,最大长度为260个字符.但是,如您所见,此路径的长度仅为72个字符.

此外,由于应用程序作为安装程序的一部分安装在用户的AppData文件夹中,因此无法在任何一台用户计算机上真正控制此路径将指向的位置.

我认为这必然意味着ACTUAL路径实际上是从显示的路径以某种方式映射的?所以,我的问题是,如何从命令行找到完整的实际路径(必须是260个字符的路径),以便我可以确定如何真正解决此问题.

解决方法

Windows路径是无限的,但需要使用不同的语法.

http://msdn.microsoft.com/en-us/library/windows/desktop/aa365247(v=vs.85).aspx

The Windows API has many functions that also have Unicode versions to permit an extended-length path for a maximum total path length of 32,767 characters. This type of path is composed of components separated by backslashes,each up to the value returned in the lpMaximumComponentLength parameter of the GetVolume@R_329_4045@ion function (this value is commonly 255 characters). To specify an extended-length path,use the “\?\” prefix. For example,“\?\D:\very long path”.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐