|
分類:[.NET 全般]
開発環境 OS : Windows 7 Professional Service Pack 1 32ビットオペレーティングシステム 使用言語 : 障害が発生しているアプリケーション名(HogeHoge.exe)はVB2010(ビルドは.Net Framework 2.0)、自作DLLはVC2010 HogeHoge.exe : Declare Function を使用して自作DLLを参照し、自作DLLを呼び出している
動作を停止しましたエラーの不具合が発生した実行環境 OS : Windows Server 2012 R2
実行環境にて、動作を停止しましたエラーが発生した時、イベントビュアーには、 障害が発生しているアプリケーション名: HogeHoge.exe、バージョン: 1.0.5381.20977、タイム スタンプ: 0x5423805b 障害が発生しているモジュール名: MSVCR80.dll、バージョン: 8.0.50727.8428、タイム スタンプ: 0x520b1060 例外コード: 0xc000000d 障害オフセット: 0x0003411a 障害が発生しているアプリケーション パス: C:\Test\HogeHoge.exe 障害が発生しているモジュール パス: C:\Windows\WinSxS\x86_microsoft.vc80.crt_1fc8b3b9a1e18e3b_8.0.50727.8428_none_d08a11e2442dc25d\MSVCR80.dll レポート ID: 1aa3a334-47a4-11e4-80d2-288023cc50b9 が記述されています。 ちなみにこの動作を停止しましたエラーは、現象が数百回に1回の割合で発生するため、再現性はほとんどありません。
エラー場所特定方法には、障害オフセット(ここでは、0x0003411a です)の情報を利用する手段がありますが、 ビルド時に生成された .mapファイル や .codファイル が必要であり、 障害が発生しているアプリケーションがVB2010で作成されている上、 障害が発生しているモジュール名も MSVCR80.dll と VC2005のランタイムであるので、 .mapファイル作成も、VC2010で作成する自作DLL以外考えられませんでした。
ここでのエラー場所特定は、障害オフセットを利用する以外の方法があるでしょうか?
例外コード: 0xc000000d とは、STATUS_INVALID_PARAMETER つまり、「無効なパラメータをサービスまたは関数に渡しました。」です。
|