CException::GetErrorMessage

仮想 BOOL GetErrorMessage (LPTSTR lpszError、UINT nMaxError、PUINT pnHelpContext = NULL);

戻り値

関数が成功したエラー メッセージのテキストがない場合は 0 それ以外の場合は。

パラメーター

lpszError

エラー メッセージを受け取るバッファーへのポインター。

nMaxError

NULLターミネータを含め、バッファーが保持できる文字の最大数。

pnHelpContext

ヘルプ コンテキスト ID を受け取るUINTのアドレスNULL、ID なしに返される場合。

解説

発生したエラーに関するテキストを提供するためにこのメンバー関数を呼び出します。たとえば、 CFileオブジェクトへの書き込み時、 CFileExceptionをスローすると、MFC が原因のエラーを説明する文字列を取得するには、 GetErrorMessageを呼び出す。

メモ GetErrorMessage nMaxError-1文字をバッファーにコピーされません、それは常に、string.nbsp を終了するには、末尾の null を追加する;バッファーが小さすぎる場合は、エラー メッセージが切り詰め可能性があります。(&N)。

CException::GetErrorMessageの使用の例はここにあります。

   CFile の fileInput;CFileException ex;//読み取り用にファイルを開くしようとしています。//ファイルは確かにしません。・ ・があるのであまりにも多く存在する明示的な//ディレクトリ名。//Open() の呼び出しが失敗した場合は、元になります。//例外を初期化//information.nbsp;呼び出し元。GetErrorMessage()//、適切なメッセージの説明を取得します。・ ・ エラーを独自のテキストを追加します//、ユーザーが完全にことを確認何かどうかを確認するには・ ・が間違っていた。場合 (! fileInput.Open (「\\Too\\Many\\Bad\\Dirs.DAT」使用、& 元)){TCHAR szCause [255];CString の strFormatted;元。GetErrorMessage (szCause, 255);//(現実の生活では、おそらく多くは//これから読むに適切な//それは簡単になるので、文字列リソース//ローカライズ)strFormatted = _T ("このエラーのため、データ ファイルを開けませんでした:」);strFormatted + = szCause;AfxMessageBox(strFormatted);}他{//ファイルが開かれた、どんな仕事もそう//fileInput//私たちは計画された.// :fileInput.Close();}(&N)

CException 概要|nbsp;クラス メンバー |階層図(&N)

参照特価;CException::ReportError(&N)

Index