SHCreateItemFromParsingName不能使用以“\\?\”开头的路径

时间:2011-04-14 01:18:58

标签: windows file

我正在使用SHCreateItemFromParsingName将文件夹从一个卷移动到另一个卷。一个卷路径以“\?\”开头,SHCreateItemFromParsingName不能使用它。

是否按设计?或者我想念任何事情让它发挥作用?

由于MoveFileEx仅适用于移动卷内的目录,而CopyFileEx仅适用于复制文件(而非目录),因此Shell对象的MoveItem是我移动文件夹交叉卷的唯一选项。但是现在我被“\?\”的东西阻挡了。感谢任何帮助!

1 个答案:

答案 0 :(得分:0)

“\?\”是许多文件API的问题(特别是在.Net中)。您可能希望使用FindFile,CreateDirectory和MoveFile以递归方式移动文件。这些Win32函数将采用以“\?\”开头的文件路径。

查看pinvoke:FindFirstFile