CreateFile 得不到句柄 得到错误5 - C++ Builder / Windows SDK/API
hinFile = CreateFile(
TEXT("F://TEST"),
GENERIC_READ,
FILE_SHARE_READ,
NULL,
OPEN_EXISTING,
FILE_ATTRIBUTE_NORMAL,
NULL);
if(hinFile == INVALID_HANDLE_VALUE)
{
printf("ERROR:%d\n",GetLastError());
}
GetLastError返回5;
[解决办法]
1."F:\\TEST"是文件还是文件夹,若是文件夹的话应该添加:FILE_FLAG_BACKUP_SEMANTICS
AnsiString error;HANDLE hinFile = CreateFile( "F:\\TEST", GENERIC_READ, FILE_SHARE_READ, NULL, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL|FILE_FLAG_BACKUP_SEMANTICS, NULL); if(hinFile == INVALID_HANDLE_VALUE) { error.printf("ERROR:%d\n",GetLastError()); ShowMessage(error); //SysErrorMessage(GetLastError()); } //ShowMessage("OK");