1月 02

原因判明!!

PowerShellで使うメッセージファイルの記述方法によってうまく出ないことが判明。。。

↓メッセージファイルをこんな風に書くと、ダメ。

LanguageNames = (Japanese=0x411:MSG00411)

MessageId = 0x1
Severity = Informational
Facility = Application
SymbolicName = MSG_0
Language = Japanese
%1
.

↓こんな風に書けばOK

LanguageNames = (Japanese=0x411:MSG00411)

MessageId = 0x1
Facility = Application
SymbolicName = MSG_0
Language = Japanese
%1
.

どこが違うかというと、「Severity = Informational」があるか、ないかの違いです。

ResourceHackerで見てみたところ、左のメッセージIDがちょっと変。(左がSeverityを書いている、右はSeverityがない)

画面の右のようになるようにDLLを作れば「Write-EventLog」の-EventIDにメッセージIDを指定すればちゃんと出てきます。

ちなみに「Write-EventLog」に-EntryTypeがあるのでここでError、Warning、Information、SuccessAudit、FailureAuditを設定すればメッセージファイルでSeverityを書かなくてもEntryTypeの設定どおりイベントログに記録されました。

Trackback URL

Leave a Reply

*


デル株式会社
トレンドマイクロ・オンラインショップ

Get Adobe Flash player