SE の雑記

SQL Server の情報をメインに Microsoft 製品の勉強内容を日々投稿

例外コードの調べ方

leave a comment

Windows を使用していて、例外コードが発生してアプリケーションが終了されることがあります。
例外コードの内容ってどうやって調べるのだろうと思っていたら、@IT に記事がありました。

“Error Code Lookup”ツールでエラー・コードから原因を探る

Windows の例外コードは DDK の ntstatus.h で定義されているようなのですが、上記の記事で紹介されている、
Microsoft Exchange Server Error Code Look-up を使用すると調べることができます。

DDK の ntstatus.ht で定義されていることは以下の KB に記載されています。
NTSTATUS エラー コードをメッセージ文字列に変換する方法

Err Code Lookup の使い方は簡単で、モジュールをダウンロードしたら実行して解凍をして、コマンドプロンプトで
実行するだけです。

以下はコマンドの実行例です。

err.exe [/ヘッダファイル名] <例外コード>

>err.exe 0xC0000142
# for hex 0xc0000142 / decimal -1073741502 :
? STATUS_DLL_INIT_FAILED??????????????????????????????????????? ntstatus.h
# {DLL Initialization Failed}
# Initialization of the dynamic link library %hs failed. The
# process is terminating abnormally.
# 1 matches found for "0xC0000142"

>err.exe /ntstatus.h 0xC0000142
# ntstatus.h selected.
# for hex 0xc0000142 / decimal -1073741502 :
? STATUS_DLL_INIT_FAILED??????????????????????????????????????? ntstatus.h
# {DLL Initialization Failed}
# Initialization of the dynamic link library %hs failed. The
# process is terminating abnormally.
# 1 matches found for "0xC0000142"

?

アプリケーションが終了した場合、例外コードが何を示しているのかを調べるようにすると、一歩進んだ原因の
調査ができるかも知れないですね。

この辺はデバイスドライバの開発をされている方とかはかなり詳しいんでしょうね~。

Share

Written by Masayuki.Ozawa

9月 27th, 2009 at 1:33 pm

Posted in Windows Server

Leave a Reply