- 締切済み
ADOの_com_errorをエラー内容別に対処したい
VC++6.0でADOを使ったDBアクセスを行っています。 ADOの_com_errorをエラー内容別に対処したいと思っています。 ネット上やMSDNライブラリを調べた結果、以下のようにすればエラー別の対処が可能だとわかりました。 try { // DB access. } catch (_com_error& e) { WORD w = _com_error::WCodeToHRESULT(e.WCode()); switch(w) { case 0: // Something to do. break; } } ただ、上記のcase文の数値に該当する箇所について、正しくはエラー定数を記述するという解説もみかけました。このエラー定数にはどのようなものがあるか、何を参照すればわかるでしょうか? また、ADOのこれらの情報については、書籍等を参考にしないとわからないものでしょうか?(探し方が悪いのか、MSDNライブラリでは一定の値のエラーが返るという以上の情報を得られませんでした。) よろしくお願いいたします。
- みんなの回答 (1)
- 専門家の回答
みんなの回答
- nishito24
- ベストアンサー率90% (10/11)
回答No.1
} catch (_com_error& e) { String m1 = (char*)e.Description(); String m2 = (char*)e.ErrorMessage(); } どちらかのコードでエラー内容が文字列で取得できるので、エラー原因はわかります。この程度でいいのではないですか? エラー定数を全部洗い出すのは大変ですよ。
お礼
ありがとうございました! 確かにそうかもしれません…。 時間をかけるべき部分でもないですし、その方法でいこうかと思います。 全部を洗い出すのではなく、2,3のエラーにのみ特定の処理をしたいと考えていました。 ドキュメント、ありそうでないですね。