1
我正試圖克服win32 API的路徑上的MAX_PATH限制。作爲MSDN文檔這些API(即CreateDirectory)的建議,我試圖與「\\。\?」預先計劃的路徑,但不斷得到錯誤123與長路徑一起使用時,CreateDirectory失敗,錯誤123錯誤
這裏是我的代碼 -
wstring path = L"\\\\?\\D:\\<LongPath>";
if(!CreateDirectory(path.c_str(), NULL)) //translates to CreateDirectoryW
{
// Get the error using GetLastError()
}
錯誤123表示 - 「文件名,目錄名稱或卷標語法不正確。」。有什麼我需要做不同的事情嗎?
只是爲了好玩,您能不能告訴我們這些路徑之一還有,什麼是卷格式(FAT,FAT32,NTFS,最後,這個超長路徑的任何單個子成分是否超過255個字符(典型情況下,使用'GetVolumeInformation()'知道確切的限制)? – WhozCraig
卷格式是NTFS。其中一個目錄在路徑中有超過255個字符是造成這個問題的原因之後,我解決了這個問題,CreateFirectory適用於大於255的路徑長度。感謝您的幫助! –