![]() |
eigenen eintrag ins ereignisprotokoll von xp?
hallo
weis jemand ob das machbar ist und mit welchen mitteln? richard |
Re: eigenen eintrag ins ereignisprotokoll von xp?
Habe gerade dazu ein Artikel in der Tutorialsparte veröffentlicht:
![]() |
Re: eigenen eintrag ins ereignisprotokoll von xp?
Ja, in der neuen Toolbox ist ein Artikel zu diesem Thema.
[Edit: zu langsam] |
Re: eigenen eintrag ins ereignisprotokoll von xp?
oh danke dir fuer deine schnelle antwort :) werd ich mir gleich ma zu gemuete fuehren.
richard |
Re: eigenen eintrag ins ereignisprotokoll von xp?
Wenn man auf individuelle Texte verzichten kann, geht es auch noch kürzer:
Delphi-Quellcode:
EventSource := ChangeFileExt(ExtractFilename(paramstr(0)), '');
EventLog := RegisterEventSource(nil, PChar(EventSource)); if EventLog <> 0 then begin PMsg := PChar('Meldung im Eventlog'); ReportEvent(EventLog, 1, 0, 0, nil, 1, 0, @PMsg, nil); DeregisterEventSource(EventLog); end; |
Re: eigenen eintrag ins ereignisprotokoll von xp?
Dann hast du aber leider diesen Text
Zitat:
|
Re: eigenen eintrag ins ereignisprotokoll von xp?
@lucki
also dein tut ist sehr informativ. ich habe aber das problem das ich variablenwerte in den eventtext einfuegen moechte. ist es denn moeglich in die resource zu schreiben wenn die exe läuft? richard edit // ich brauch es so resourcensparend wie moeglich. sprich am besten keinen HDD zugriff und wenig cpu belastung |
Re: eigenen eintrag ins ereignisprotokoll von xp?
Zitat:
Code:
Das ist mein Text mit dem Platzhalter %1
|
Re: eigenen eintrag ins ereignisprotokoll von xp?
@ chewie
ich hab echt kein plan wovon du redest meinst du sowas wie paramstr()? richard |
Re: eigenen eintrag ins ereignisprotokoll von xp?
In die Ressource packst du den Text mit den Platzhaltern. Diese werden dann durch den Text ersetzt, den du in dem String-Array übergibst.
Was hast du jetzt für Probleme mit den Festplattenzugriffen? Es wird nur dann auf de festplatte zugegriffen, wenn sich jemand deinen Eintrag im Eventlog anguckt. Dann wird der Text aus der Ressource deiner Exe oder DLL geladen. |
Re: eigenen eintrag ins ereignisprotokoll von xp?
@Luckie:
Toller Artikel - Mensch, hätte ich den vor 2 Monaten schon gehabt, dann hätte ich mir viel Gegrübel sparen können :-D an der Ressourcendatei saß ich am längsten... Gruß peanut. |
Re: eigenen eintrag ins ereignisprotokoll von xp?
Zitat:
Und einfach mal öfters vorbeigucken ![]() |
Re: eigenen eintrag ins ereignisprotokoll von xp?
naja ich muss doch dann vor jeden event die resource aendern in meiner datei oder?
richard //die demoanweindung lauft bei mir nicht. er sagt rpc server nicht verfuegbar |
Re: eigenen eintrag ins ereignisprotokoll von xp?
Zitat:
|
Re: eigenen eintrag ins ereignisprotokoll von xp?
wenn ich aber bei jedem eintrag einen anderen text haben will?
|
Re: eigenen eintrag ins ereignisprotokoll von xp?
Das, was oben steht, ist eine Antwort auf deinen Post, auch wenn die Forensoftware da offentsichtlich anderer Meinung ist :shock:
|
Re: eigenen eintrag ins ereignisprotokoll von xp?
@ union
habe deinen code mal angepasst. er legt zwar einen eintrag im ereignislog an, jedoch traegt er die eingentliche meldung nicht ein und ich seh nur den /auxsource text. hab ich einen fehler drin oder funktioniert es so nicht? kann man die mc.exe auch extra bei ms downloaden ? //quelltext
Delphi-Quellcode:
//quelltext ende
procedure TForm1.Button1Click(Sender: TObject);
var EventSource:string; EventLog:cardinal; Pmsg:Pansichar; begin EventSource := ChangeFileExt(ExtractFilename(paramstr(0)), ''); EventLog := RegisterEventSource(nil, PChar(EventSource)); if EventLog <> 0 then begin PMsg := PChar('hallo das ist eine meldung von mir!'); ReportEvent(EventLog, 2, 0, 0, nil, 0, 0, @PMsg, nil); DeregisterEventSource(EventLog); end; end; //meldung
Code:
//meldung ende
Ereignistyp: Warnung
Ereignisquelle: Project1 Ereigniskategorie: Keine Ereigniskennung: 0 Datum: 28.07.2006 Zeit: 19:32:06 Benutzer: Nicht zutreffend Computer: CORE Beschreibung: Die Beschreibung der Ereigniskennung ( 0 ) in ( Project1 ) wurde nicht gefunden. Der lokale Computer verfügt nicht über die zum Anzeigen der Meldungen von einem Remotecomputer erforderlichen Registrierungsinformationen oder DLL-Meldungsdateien. Möglicherweise müssen Sie das Flag /AUXSOURCE= zum Ermitteln der Beschreibung verwenden. Weitere Informationen stehen in Hilfe und Support. Ereignisinformationen: Die Ereignisprotokolldatei ist beschädigt.. richard [edit=alcaeus]Delphi-Tags eingefuegt. Mfg, alcaeus[/edit] |
Re: eigenen eintrag ins ereignisprotokoll von xp?
Zitat:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 05:33 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