我正在尝试打开刚刚使用 open64() 创建的文件。当我尝试打开该文件时,系统调用失败并显示 ENOENT。我知道该文件确实存在,因为我刚刚创建了它,并且 ls 将其显示在它应该所在的目录中。当我尝试使用 open() 打开它时,它失败并出现 EOVERFLOW,这是预期的,但它也意味着该文件存在。有任何想法吗?
const char* filename = pDt->evtfname;
int evtFile;
evtFile = open64(filename, O_RDONLY);
perror("The following error occurred");
最佳答案
evt 文件的值是什么?你不检查它。 errno 仅在 evtx 文件 < 0
时有效关于c - 即使文件存在,open64() 也会失败并显示 ENOENT,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3876322/