读书人

CreateFile 得不到句柄 得到异常5

发布时间: 2012-03-15 11:50:38 作者: rapoo

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

C/C++ code
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"); 

读书人网 >C++ Builder

热点推荐