gpt4 book ai didi

c++ - CreateFile 失败,错误代码 2,而文件存在

转载 作者:搜寻专家 更新时间:2023-10-31 00:32:13 30 4
gpt4 key购买 nike

我尝试通过 CreateFile 打开现有文件,但它总是失败并显示 errorcode 2 - 就像文件不存在,但它存在 - 它位于具有可执行文件的文件夹中。

hFile = CreateFile( argv[ 1 ], GENERIC_READ, FILE_SHARE_READ | FILE_SHARE_WRITE, NULL, OPEN_EXISTING, 0, NULL );
if ( hFile == INVALID_HANDLE_VALUE )
{
printf( "\nError: Unable to open file (%d)\n", GetLastError( ) );
return -1;
}

即使我将 argv[1] 替换为硬编码文件名字符串,它也会失败。应用以管理员身份运行。

最佳答案

错误代码是准确的。找不到该文件。可能的解释包括:

  • 您使用了错误的文件名。
  • 您使用了相对路径并且进程工作目录不是您期望的目录。

如果您希望将文件名解释为相对于可执行文件所在的目录,那么就这样做。从包含可执行文件和指定文件名的目录形成绝对路径。

没有理由期望进程工作目录是可执行文件所在的目录。

关于c++ - CreateFile 失败,错误代码 2,而文件存在,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32055942/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com