我正在使用 C++ 并通过网络访问 UNC 路径。该路径略大于 MAX_PATH。所以我无法获取文件句柄。
但是,如果我在有问题的计算机上运行该程序,则该路径不大于 MAX_PATH。这样我就可以获得文件句柄。如果我将文件重命名为更少的字符(减去计算机名称的长度),我就可以访问该文件。
即使知道 UNC 路径中的计算机名称超出了 MAX_PATH 限制,也可以通过网络访问该文件吗?
我记得有一些功能,例如使用\\?\
在绕过的路径的起点MAX_PATH
限制。这是MSDN上的参考:
http://msdn.microsoft.com/en-us/library/aa365247(VS.85).aspx http://msdn.microsoft.com/en-us/library/aa365247(VS.85).aspx
对于远程计算机,您可以使用如下路径名:\\?\unc\server\share\path\file
. The \\?\unc\
是特殊前缀,不用作实际文件名的一部分。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)