我是用C++和访问一个UNC路径的网络。这个路径是略大于MAX_PATH.所以我不能获得一个文件处理。

但是,如果我运行程序的计算机上的问题,路径不大于MAX_PATH.这样我就可以得到文件处理。如果我重新命名的文件不符(减去长度的计算机名称)我可以访问该文件。

可这一文件,可访问的整个网络知道的计算机名称在UNC路把它放在MAX_PATH限制?

有帮助吗?

解决方案

我记得有一些功能,比如在路径的开头使用 \\?\ 来绕过 MAX_PATH 限制。以下是MSDN的参考资料:

http://msdn.microsoft.com/en -us /库/ aa365247(VS.85)的.aspx

对于远程计算机,您将使用路径名,例如: \\?\ unc \ server \ share \ path \ file \\?\ unc \ 是特殊前缀,不会用作实际文件名的一部分。

其他提示

你可能能够得到处理的文件,如果你尝试打开文件转换后的文件名称的短(8.3)文件的名称。如果做不到这一点你可以的地图目录的文件,作为驱动和获取的文件的方式?

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top