1
win32 API 경로의 MAX_PATH 한계를 극복하려고합니다. 이러한 API (즉, CreateDirectory)에 대한 MSDN 문서에서 제안, 나는 함께 노력했다 '\\ \?'사전 보류 경로에 있지만 오류 여기에 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, etc ..)? 마지막으로이 수퍼 롱 경로의 단일 하위 구성 요소는 255자를 초과합니까 (일반적으로 정확한 제한을 알기 위해'GetVolumeInformation() '사용)? – WhozCraig
볼륨 형식은 NTFS입니다. 경로에 255 자 이상의 문제가 발생했습니다. 그 고정 된 후 CreateFirectory 255보다 큰 경로 길이가 작동합니다. 도움 주셔서 감사! –