例外 (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 がスローされます。この例外は、どの点からみても致命的です。
詳細については、「構造体と定数の定義」を参照してください。