次の方法で共有


CArchiveException クラス

シリアル化例外条件を表します

構文

class CArchiveException : public CException

メンバー

パブリック コンストラクター

名前 説明
CArchiveException::CArchiveException CArchiveException オブジェクトを構築します。

パブリック データ メンバー

名前 説明
CArchiveException::m_cause 例外の原因を示します。
CArchiveException::m_strFileName この例外条件のファイル名を指定します。

解説

CArchiveException クラスには、例外の原因を示すパブリック データ メンバーが含まれています。

CArchiveException オブジェクトは、 CArchive メンバー関数内で構築およびスローされます。 これらのオブジェクトには、 CATCH 式のスコープ内でアクセスできます。 原因コードはオペレーティング システムに依存しません。 例外処理の詳細については、「 Exception Handling (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 別のバージョンのクラスを持つオブジェクトを読み取ろうとしました。

    Note

    これらの CArchiveException 原因列挙子は、CFileException 原因列挙子とは異なります。

    Note

    CArchiveException::generic は非推奨とされます。 代わりに genericException を使用してください genericをアプリケーションで使用し、/clr でビルドすると、解読が容易ではない構文エラーが発生します。

CArchiveException::m_strFileName

この例外条件のファイル名を指定します。

CString m_strFileName;

関連項目

CException クラス
階層図
CArchive クラス
AfxThrowArchiveException
例外処理