CArchiveException 类

表示序列化异常条件

语法

class CArchiveException : public CException

成员

公共构造函数

名称 描述
CArchiveException::CArchiveException 构造 CArchiveException 对象。

公共数据成员

“属性” 描述
CArchiveException::m_cause 指示异常原因。
CArchiveException::m_strFileName 指定此异常条件的对应文件的名称。

注解

CArchiveException 类包含指示异常原因的公共数据成员。

CArchiveException 对象在 CArchive 成员函数内部进行构造和引发。 可以在 CATCH 表达式的范围内访问这些对象。 原因代码独立于操作系统。 有关异常处理的详细信息,请参阅异常处理 (MFC)

继承层次结构

CObject

CException

CArchiveException

要求

标头: afx.h

CArchiveException::CArchiveException

构造一个 CArchiveException 对象,将 cause 的值存储在该对象中

CArchiveException(
    int cause = CArchiveException::none,
    LPCTSTR lpszArchiveName = NULL);

参数

cause
指示异常原因的枚举类型变量。 有关枚举器的列表,请参阅 m_cause 数据成员。

lpszArchiveName
指向字符串,该字符串包含导致异常的 CArchive 对象的名称。

备注

可以在堆上创建一个 CArchiveException 对象,并自行引发对象,或者让全局函数 AfxThrowArchiveException 为你处理。

请勿直接使用此构造函数;而是调用全局函数 AfxThrowArchiveException

CArchiveException::m_cause

指定异常的原因。

int m_cause;

备注

此数据成员是类型 int 的公共变量。 它的值由 CArchiveException 枚举类型定义。 枚举器及其含义如下所示:

  • CArchiveException::none 未发生任何错误。

  • CArchiveException::genericException 未指定的错误。

  • CArchiveException::readOnly 已尝试写入为进行加载而打开的存档。

  • CArchiveException::endOfFile 读取对象时已到达文件末尾。

  • CArchiveException::writeOnly 已尝试从为进行存储而打开的存档进行读取。

  • CArchiveException::badIndex 无效的文件格式。

  • CArchiveException::badClass 已尝试将对象读取到类型错误的对象中。

  • CArchiveException::badSchema 已尝试读取具有不同类版本的对象。

    注意

    引发这些 CArchiveException 的枚举器不同于引发 CFileException 的枚举器。

    注意

    CArchiveException::generic 已弃用。 请改用 genericException。 如果在应用程序中使用 generic 并使用 /clr 进行生成,则生成的语法错误将难以解密

CArchiveException::m_strFileName

指定此异常条件的对应文件的名称。

CString m_strFileName;

另请参阅

CException 类
层次结构图
CArchive 类
AfxThrowArchiveException
异常处理