WinGP SDKの各種API が返したエラーコードをエラーメッセージに変換します。
このとき、可能であれば、エラーが発生した状況や情報を付加してエラーメッセージを返します。
EasyLoadErrorMessage()は、指定されたエラーコードに対して常に同じエラーメッセージを返しますが、EasyLoadErrorMessageEx() は、通信相手名やエラーの発生場所など、エラーの発生した状況により、より詳しいエラー情報を返します。同じエラーコードでも場合によっては違うエラーメッセージを返します。
EasyLoadErrorMessageEx(),EasyLoadErrorMessageExM()は、メッセージとしてマルチバイト文字列(ASCII)を返します。
EasyLoadErrorMessageExW(),EasyLoadErrorMessageExWM()は、メッセージとしてワイド文字列(UNICODE)を返します。
関数名
BOOL WINAPI EasyLoadErrorMessageEx(INT iErrorCode,LPSTR osErrorMessage);
BOOL WINAPI EasyLoadErrorMessageExW(INT iErrorCode,LPWSTR owsErrorMessage);
引数
iErrorCode: (In)WinGP SDKの関数が返したエラーコード
osErrorMessage: (Out)変換された文字列(マルチバイト文字列)を格納する領域へのポインタ(1024 バイト以上を確保しコールしてください。)
owsErrorMessage: (Out)変換された文字列(ワイド文字列)を格納する領域へのポインタ(2048 バイト以上を確保しコールしてください。)
戻り値
正常終了:0以外
文字列変換に失敗(使用されていないエラーコードなど):0
特記事項
EasyLoadErrorMessage()は、WinGP SDKのAPIをコールして、そのAPIがエラーコードを返した場合、そのエラーコードをメッセージに変換するために利用される場合を想定しています。
WinGP SDKは、ハンドルごとにエラーの状況情報を1つ分しか覚えていません。そのため、エラーの発生元となったAPIとEasyLoadErrorMessage() の間に、別のAPI をコールするとエラーの状況情報が書き換えられてしまうため、EasyLoadErrorMessage()はエラーの状況情報を返しません。