PB 電子会議室
発言No. | 更新日 | 題名(クリックすると発言内容と関連するコメントが表示されます) |
---|---|---|
17382 | 02/05/09 12:31:50 | RE(3):PB5.0.04: API関数(ReportEvent)を用いたイベントビューアー書込み時のエラー回避方法について By mippa |
17363 | 02/05/02 20:37:25 | RE(2):PB5.0.04: API関数(ReportEvent)を用いたイベントビューアー書込み時のエラー回避方法について By Taka |
17358 | 02/05/02 00:14:02 | RE(1):PB5.0.04: API関数(ReportEvent)を用いたイベントビューアー書込み時のエラー回避方法について By Taka |
17353 | 02/05/01 14:18:50 | PB5.0.04: API関数(ReportEvent)を用いたイベントビューアー書込み時のエラー回避方法について By mippa |
カテゴリ:PowerBuilderの開発環境
日付:2002年05月02日 00:14 発信者:Taka
題名:RE(1):PB5.0.04: API関数(ReportEvent)を用いたイベントビューアー書込み時のエラー回避方法について
mippaさん、こんばんは。
ReportEventを正しく使うには、以下の事前準備および環境設定が必要になります。
1.メッセージリソースを含む実行モジュールを作成する。
メッセージコンパイラ(SDKでいうMC.EXE)を使ってメッセージ定義ソースをバイナリ形式に変換します。
EXEやDLLなどをビルドする際、このバイナリ情報をリソースとして取り込みます。
(この処理はPBのコンパイルではできません。C/C++などを使うことになります)
ReportEventで指定するEventIDは、上記メッセージ定義上で宣言したIDでなければなりません。
余談ですが、定義するメッセージ内容は『私は\"%1\"の\"%2\"です。』といったテンプレート形式とし、
ReportEventに与える文字列配列は、{\"PowerBuilder\",\"開発者\"}などの可変値のみにします。
この結果、『私は PowerBuilder の 開発者 です。』のように出力されます。
2.レジストリへの登録
1.でメッセージリソースを取り込んだモジュールファイルを、以下の要領でレジストリに登録します。
HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Services\\EventLog\\Application
この下に任意のサブキー(この場合、WINAPP)を作成し、
・EventMessageFile(文字列:1.のモジュールのフルパス名)
・TypesSupported(数値:5 or 7)
の名前で登録しておかなければなりません。
詳しくは、イベントログ関連の技術資料を参考にしてください。
イベントログのしくみは奥が深いです。そのぶんOSが重いんですけど… (^^;
付加情報:
PowerBuilder Version (記載なし)
Client SoftWare
OS Windows NT 4.0
DBMS (記載なし)
Browser (記載なし)
Server SoftWare
OS HP-UX
DBMS Oracle 7.1
WebServer (記載なし)
Copyright © 2013 Power Future Co., Ltd.