文件打开的问题

File open issues

本文关键字:问题 文件      更新时间:2023-10-16

这段代码导致打开的文件出现m_cause0的原因是什么?找到了很多原因,另一个代码将返回,但没有0的原因。

CFileException fileException;
CFile myFile;
if (myFile.Open("C:\test\docs\test.txt", CFile::modeCreate | CFile::modeWrite, &fileException))
{
    TRACE( "Can't open file %s, error = %un", "test.txt", fileException.m_cause );
}

CFile::Open()成功后不返回零,示例中的调用不会失败!

检查!CFile::Open(...)

返回值如果打开成功,

非零;否则0。只有当返回0时,pError参数才有意义。

摘自MSDN(我已经链接到Visual Studio 2010的文档,但它与VS2005和2003相同,甚至可能更早)。

根据bert-jan的建议,您应该检查!CFile::Open(...),因为在文件无法打开的情况下,您实际上不会处理错误。