与长路径一起使用时,创建目录失败并显示错误 123

CreateDirectory fails with error 123 when used with a long path

本文关键字:失败 创建目录 显示 错误 路径 一起      更新时间:2023-10-16

我正在尝试克服win32 API路径上的MAX_PATH限制。正如这些 API(即 CreateDirectory)的 msdn 文档中所建议的那样,我已经尝试在路径前面附加了"\\?\",但不断收到错误 123。

这是我的代码 -

wstring path = L"\\?\D:\<LongPath>";
if(!CreateDirectory(path.c_str(), NULL)) //translates to CreateDirectoryW 
{
 // Get the error using GetLastError()
}

错误 123 代表 - "文件名、目录名或卷标语法不正确。我还需要做其他不同的事情吗?

文件夹名称不能包含一些特殊的字符,例如 ?:/*"<>