![]() |
Event Identifier im Eventlog
Ich kämpfe gerade mit folgendes Problem:
Wenn ich ins Eventlog was eintrage, wird mir anzeigt, dass mein EventIdentifier nicht registriert ist. Klar, ist er ja auch nicht. Wenn ich nun meinen EventIdentifier registriere, muss ich ja leider auch einen Description String angeben. In diesem Fall wird aber nur der Description String angezeigt, nicht aber der String, den ich bei ReportEvent im Parameter lpStrings übergebe. Gibt es eine Möglichkeit, meinen in lpStrings übergebenen String anzuzeigen und trotzdem den Event Identifier für dieses Event zu registrieren? |
Re: Event Identifier im Eventlog
Hat keiner ne Idee? :cry:
|
Re: Event Identifier im Eventlog
Moin Chewie,
wie registrierst Du denn den Event Identifier? |
Re: Event Identifier im Eventlog
So wie hier beschrieben: ms-help://MS.PSDK.1033/debug/base/message_files.htm
Meine Messagedatei sieht dabei so aus:
Code:
Im Eventlog erscheint nun nur der Text nach dem Language. Lasse ich den Text weg, erscheint im Eventlog plötzlich der SymbolicName :shock:
;//Header
LanguageNames=(Deutsch=1:MSG0001) MessageId=10001 SymbolicName=NO_REG_DB_ACCESS_DATA Language=Deutsch Die für die Verbindung zum SQL-Server benötigten Zugangsdaten konnten in der Registry nicht gefunden werden. . Messageid=10002 SymbolicName=MISSING_REG_DB_ACCESS_DATA Language=Deutsch Nicht alle der für die Verbindung zum SQL-Server benötigten Zugangsdaten konnten in der Registry nicht gefunden werden. . |
Re: Event Identifier im Eventlog
Wirklich niemand?? :cry:
|
Re: Event Identifier im Eventlog
Delphi-Quellcode:
Die per lpStrings angegebenen Strings werden anstelle der Platzhalter %1..%n in den Message-Text eingesetzt.
BOOL ReportEvent(
HANDLE hEventLog, // handle returned by RegisterEventSource WORD wType, // event type to log WORD wCategory, // event category DWORD dwEventID, // event identifier PSID lpUserSid, // user security identifier (optional) WORD wNumStrings, // number of strings to merge with message DWORD dwDataSize, // size of binary data, in bytes LPCTSTR *lpStrings, // array of strings to merge with message LPVOID lpRawData // address of binary data ); |
Re: Event Identifier im Eventlog
Ja, das hab ich auch schon gelesen, aber ich will, dass ich den String im Programm erzeuge und nicht nur die Platzhalter.
Moment, ich hab da eine Idee. Vielleicht klappt das ja... |
Re: Event Identifier im Eventlog
ein Message-Text der nur ein %1 enthält ?
|
Re: Event Identifier im Eventlog
Jo, alles klar. Ich schreib als MessageString einfach %1 in die Messagedatei, dann wird das angezeigt, was ich im Programm übergebe.
Vielen Dank, dass du mir die Augen geöffnet hast :mrgreen: |
Re: Event Identifier im Eventlog
Ich hab gerade das gleiche Problem.
Ich würde aus einem Service gerne Statusmeldungen also Informationseinträge in das Eventlog schreiben. Was muss ich dafür jetzt nochmal genau machen? Das mit den Nachrichten und der Message-Datei hab ich noch nicht so ganz gecheckt. Wo kommt die Datei her, was muss ich damit machen und wie bekomm ich dann ne Nachricht ins Log? |
Alle Zeitangaben in WEZ +1. Es ist jetzt 19:23 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz