fügen Sie Ereignis-Protokoll, um registry
Ich versuche, Zugriff auf ein "ForwardedEvents" - Veranstaltungen melden Sie sich auf einem server mit
el = new EventLog("ForwardedEvents", serverName);
funktioniert das nicht.
Ich glaube, dass es nicht funktioniert, da das Protokoll nicht in der registry, wo Eventlog erwarten würde, um es zu finden (HKLM/System/CurrentControlSet/Services/Eventlog/.. ).
Wie möchte hinzufügen das Protokoll zur Registrierung, so ist es gefunden, oder gibt es eine andere Methode für den Zugriff auf ein Protokoll, das nicht angegeben, dass Ort?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Behoben wird das Problem durch erstellen eines neuen registry-Eintrag für das Protokoll:
(HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\eventlog\LOGNAME).
Haben.. ( auf windows server 2008 R2).
1) mit der Rechten Maustaste auf den übergeordneten Ordner (eventlog) -> New -> Schlüssel
2) benennen Sie den Schlüssel wie die evtx-Datei gefunden (C:\Windows\System32\winevt\Logs\LOGNAME)
3) Im rechten Fensterbereich des Registrierungs-explorer mit der rechten Maustaste -> new -> Wert der Erweiterbaren Zeichenfolge
4) benennen Sie die neu erstellte " REG_EXPAND_SZ "Datei"
5) mit der Rechten Maustaste auf den Namen "Datei"
6) Ändern
7)In der "Value Data" - Feld, fügen Sie den Pfad zu evtx-Datei, wie
( %SystemRoot%\System32\winevt\Logs\ForwardedEvents.evtx )
Dies ist in der Nähe der anderen registry-Lösung, die hier angeboten werden, aber dies ist, wie ich es gemacht habe auf Windows 7, und schreiben in das Anwendungsprotokoll, nicht die Weitergeleiteten Ereignisse log:
Windows-logo - > Typ
regedit
in der Suche und drücken Sie die Taste EnterErweitern
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\eventlog
Finden Sie die
Application
Schlüssel und erstellen Sie einen neuen Schlüssel für Ihre Anwendung:MyApp
In
MyApp
mit der rechten Maustaste auf das Fenster rechts in den leeren Bereich und wählen Sie Neue > Wert der Erweiterbaren Zeichenfolge. Dadurch wird eineREG_EXPAND_SZ
Eintrag. Geben Sie den NamenEventMessageFile
.Doppelklicken Sie auf den neuen Eintrag, um einen Wert festzulegen. Für den Wert, geben Sie ein:
C:\Windows\Microsoft.NET\Framework64\v4.0.30319\EventLogMessages.dll
Wählen Sie OK.
Verlassen die
(Default)
string-Wert allein mit seiner(value not set)
Wert.Wiederholen Sie zwei weitere Male durch den Austausch
CurrentControlSet
mitControlSet001
undControlSet002
.Und wenn Sie müssen, dann bewegen Sie Ihre Anwendung auf einem anderen computer, können Sie der rechten Maustaste auf den Schlüssel und wählen Sie
Export
. Speichern Sie die Datei als.reg
- Datei, und kopieren Sie es dann an den nächsten computer. Dort doppelklicken Sie, um es auszuführen (während Sie als Administrator angemeldet sind). Auf diese Weise werden Sie nicht haben, um manuell neu zu erstellen, und für andere apps, können Sie tatsächlich zu Bearbeiten, die.reg
- Datei in Editor und ändern Sie einfach den Namen der app, speichern Sie es (sicher sein, ändern Sie das format auf "Alle Dateien", so behält er den.reg
am Ende, und nicht speichern Sie es als eine.txt
- Datei), und Sie können dann doppelklicken Sie darauf, um Sie auszuführen und legen Sie die neue app EventLog-Taste.Wenn Sie immer noch wollen, dies zu tun, die programmatische Weise als Gegensatz zu manuell erstellen das Protokoll über die registry, dort ist ein Weg. Sie brauchen, um zu überprüfen und sehen, ob die
EventSource
existiert zuerst, und wenn es nicht funktioniert müssen Sie ihn erstellen. Dies hat zu geschehen, bevor Sie versuchen, erstellen Sie eineEventLog
Instanz mit dieser Quelle. Nur beachten Sie die Latenz zwischen Erstellung und Nutzung, so stellen Sie sicher, um diese zu bewältigen (siehe http://msdn.microsoft.com/en-us/library/2awhba7a(v=vs. 110).aspx für weitere Informationen).C:>cd C:\Temp
dannC:\Temp>myapp.exe
).