イベントログのメッセージを正しく直す挑戦記その1

2005.12.25更新

今回は、イベントログに

(「イベント(ID:任意の数字) (ソース:任意のプログラム名) 内に関する説明が見つかりませんでした。リモートコンピュータからメッセージを表示するために必要なレジストリまたはメッセージ DLL ファイルがローカルコンピュータにない可能性があります。この説明を取得するために/AUXSOURCE= フラグを使用することができる可能性があります。詳細については、ヘルプとサポートを参照してください。次の情報はイベントの一部です」と表示される。)

を、直すに挑戦。

Norton AntiVirus 2006 を、インストールしてからイベントログに
「イベント ID (34 及び 35) (ソース NSCService 内) に関する説明が見つかりませんでした。リモートコンピュータからメッセージを表示するために必要なレジストリまたはメッセージ DLL ファイルがローカルコンピュータにない可能性があります。この説明を取得するために/AUXSOURCE= フラグを使用することができる可能性があります。詳細については、ヘルプとサポートを参照してください。次の情報はイベントの一部です: Norton Protection Center Service 」

と表示されるようになりました。

★正しくないメッセージのイベントのプロパティ★

イベントのプロパティイベントのプロパティ

これを正しく表示されるように、直したいと思います。

シマンテックの サポートのページ を、見るとレジストリに正しく設定が書き込まれていないときに発生するみたいなので Norton Protection Center Service (NSCService) のレジストリを確認すると

	[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Eventlog\Application\NSCService]
	EventMessageFile = C:\PROGRA~1\COMMON~1\SYMANT~1\SUCURI~1\NSCSERVICE.LOC
	TypesSupported = dword:0000001f(31)

レジストリエディタ

となっていて正しく書き込まれているみたいなので イベントID が同じで(34 及び 35) 正しくメッセージが、イベントログに書き込まれているサービス Symantec Event Manager (ccEvtMgr) のレジストリを、確認すると

イベントビューア

★正しいメッセージのイベントのプロパティ★

イベントのプロパティイベントのプロパティ

	[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Eventlog\Application\rcEvtMgr]
	EventMessageFile = C:\PROGRA~1\COMMON~1\SYMANT~1\rcEvtMgr.dll
	TypesSupported = dword:0000001f(31)

レジストリエディタ

となっているので、NSCSERVICE.LOC rcEvtMgr.dll Resource Hacker で比べてみると Message Table リソースが、抜けています。

リソースハッカーリソースハッカー

抜けた Message Table のリソースを rcEvtMgr.dll からコピーして NSCSERVICE.LOC ファイルに、付け足せば良いと思い Microsoft Visual C++ 6.0 を、使い rcEvtMgr.dll の Message Table リソースをコピーして NSCSERVICE.LOC に付け足すことにしました。まず rcEvtMgr.dll ファイルを開きます。そのときは、図のように用途 (A): リソースで開いてください。

ダイアログ

ダイアログ

rcEvtMgr.dll の Message Table リソースをコピーします。Message Table リソースは、11 のようです。

バイナリエディタ

次に NSCSERVICE.LOC ファイルを同じように開いて、新規カスタムリソース 11 で先ほどコピーしたデータを貼り付けます。プロパティで 101 の所を 1 に、直して置きます。

ダイアログ

そうしたら図のようなるはずです。英語(アメリカ)にして置きました。

ダイアログ

出来たファイルを、Resource Hacker で見てみると Message Table が組み込まれています。255 という分からないリソースが付いていたので削除して置きました。

リソースハッカー

最後に NSCSERVICE.LOC ファイルを元に戻して終わりです。再起動させて見たところ図のようにうまくいったようです。

★うまくいったメッセージのイベントのプロパティ★

イベントのプロパティイベントのプロパティ

注意

  • 今回のものは自分で勝手にやったことですので 自己責任 で、お願いします。