イベントログへの書き込み – プログラミング – Home

イベントログへの書き込み
 
通知
すべてクリア

[解決済] イベントログへの書き込み


TOM
 TOM
(@TOM)
ゲスト
結合: 23年前
投稿: 16
Topic starter  

Windows2000上でコマンドラインから引数(ソース名、イベントの種類、イベントのID、
出力メッセージ)でもって、イベントログに出力するプログラムを作ろうとしています。
メッセージリソースは作らず、コマンドラインからの引数をそのまま出力しようとしてい
るのですが、ReportEventの引数の渡し方がまずいみたいで、コンパイルが通りません。
それと、ReportEventの8番目の引数をNULLにすれば、コンパイルは通るのですが、実行
しても何もイベントログに吐き出されない状況です。
すいませんが、ご教授よろしくお願いします。

void WriteEventlog(char *szSourceName, char *szKind, DWORD numMessage, char
*szText) {
HANDLE hEventLog;
char *Kind[] = {NULL};
char *message[] = {NULL};
WORD info_type;
LONG dwMessage = numMessage;

Kind[0] = szKind;
message[0] = szText;

if(strcmp(Kind[0],error)==0){
info_type=EVENTLOG_ERROR_TYPE;
}else if(strcmp(Kind[0],warning)==0){
info_type=EVENTLOG_WARNING_TYPE;
}else{
info_type=EVENTLOG_INFORMATION_TYPE;
}

hEventLog = RegisterEventSource(NULL, szSourceName);

ReportEvent(
hEventLog,
info_type,
0,
dwMessage,
NULL,
1,
0,
NULL,
NULL);

DeregisterEventSource(hEventLog);

}


引用未解決
トピックタグ
AC
 AC
(@AC)
ゲスト
結合: 20年前
投稿: 6
 

> error C2664: 'ReportEventA' : 8 番目の引数を 'char *[1]' から '
> const char ** ' に変換できません。 (新しい機能 ; ヘルプを参照)
> 変換で修飾子が失われます。
のエラーでしょうか?

(const char**)message,
としてキャストしてみてはどうでしょうか?


返信引用
TOM
 TOM
(@TOM)
ゲスト
結合: 23年前
投稿: 16
Topic starter  

ありがとうございます。
うまくいきました。m(__)m


返信引用
dark
 dark
(@dark)
ゲスト
結合: 20年前
投稿: 12
 

マルチポストしたうえ解決チェック無かよ。。。
http://forums.belution.com/ja/cpp/000/031/74s.shtml

しかも、同じ文章。


返信引用
AC
 AC
(@AC)
ゲスト
結合: 20年前
投稿: 6
 

あらら、チェックしていなかった。
本人じゃないけど、解決


返信引用

返信する

投稿者名

投稿者メールアドレス

タイトル *

プレビュー 0リビジョン 保存しました
共有:
タイトルとURLをコピーしました