次の方法で共有


例外 (C/C++)

エラーが見つかると、次の 2 つの例外コードが発生します。

  • LoadLibrary エラーの例外コード

  • GetProcAddress エラーの例外コード

例外情報は以下のとおりです。

//
// Exception information
//
#define FACILITY_VISUALCPP  ((LONG)0x6d)
#define VcppException(sev,err)  ((sev) | (FACILITY_VISUALCPP<<16) | err)

スローされる例外コードは、標準の VcppException(ERROR_SEVERITY_ERROR, ERROR_MOD_NOT_FOUND) 値と VcppException(ERROR_SEVERITY_ERROR, ERROR_PROC_NOT_FOUND) 値です。DelayLoadInfo 構造体へのポインターが LPDWORD 値で渡されます。GetExceptionInformation では、EXCEPTION_RECORD 構造体の ExceptionInformation[0] フィールドにこの値を取得します。

また、grAttrs フィールドで不正なビットが設定されている場合は、例外 ERROR_INVALID_PARAMETER がスローされます。この例外は、どの点からみても致命的です。

詳細については、「構造体と定数の定義」を参照してください。

参照

概念

エラー処理と通知