CreateFile疑难问题求教。。。
代码:
HANDLE shFile =
CreateFile(sdbfile.c_str(),GENERIC_WRITE|GENERIC_READ,0,NULL,OPEN_EXISTING,FILE_ATTRIBUTE_NORMAL,NULL);
if(shFile == INVALID_HANDLE_VALUE)
{
ShowMessage( "Could not open file. "); // process error
}
上面的参数sdbfile.c_str(),我如果传值进来"F:\a.txt"就出错
但如果我不传参数,直接写成"F:\\a.txt"就成功
请问这是为什么呢?我百思不得其解....
[解决办法]
不知道你是如何传值的。
如果是字符串直接赋值,应该写两个反斜杠,如:
sdbfile = "F:\\a.txt";
[解决办法]
用"F:\\a.txt"