2010-07-15 8 views
6

ich versuche, eine Ereignisprotokollierung für meine cmd-Linie-Anwendung zu machen. Allerdings bekomme ich diesen Fehler, wenn es versucht, das Protokoll zum ersten Mal zu erstellen.Ereignisprotokollierung in C# unter Windows 7/2008 Server

Die Quelle wurde nicht gefunden, aber einige oder alle Ereignisprotokolle konnten nicht durchsucht werden. Nicht verfügbare Protokolle: Sicherheit.

Also ich fand das ist ein wegen Windows 7 und einige neue Sicherheit. Jetzt muss ich die .exe Admin-Rechte geben.

Gibt es einen Weg dazu, so dass es keine Administratorrechte benötigen würde? Ich weiß nicht, ob sich die Leute zu gut fühlen würden, wenn sie meine Bewerbung mit Adminrechten inhaltlich ausführen müssten.

Ich plane, dies später auf eine Windows 2008 Maschine zu setzen, so vermute ich, es wird unter dem gleichen Problem leiden.

Antwort

3

Sie können die Ereignisquelle am Installationspunkt erstellen, sodass sie diese Auswahl nur einmal vornehmen müssen. Sobald die Quelle in der Registrierung erstellt wurde, können Sie ihr Ereignisse hinzufügen, ohne dass Administratorrechte erforderlich sind.

Neben der Create Funktion gibt es auch die Eventloginstaller-Klasse ist:

http://msdn.microsoft.com/en-us/library/system.diagnostics.eventloginstaller.aspx

WiX bietet darin, diese Funktionalität auch ist Erweiterung Utility:

How do you create an event log source using WiX

+0

Wie kann ich diese Ereignisquelle bei der Installation erstellen? – chobo2

+0

Ich habe den Beitrag mit einigen weiteren Informationen aktualisiert – fletcher

+0

Also, was stelle ich nur ein Argument und sagen, vielleicht wie installieren? Dann installiert es es einfach und das ist es? – chobo2

1

NETWORK SERVICE ODER imitierten Benutzer muss Lese-/Schreibzugriff auf HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Services \ EventLog \ Security haben

+0

Aber dann hätte ich Zugang zu jedem eventLog? – chobo2

+0

Ihre Frage bestand darin, ein Ereignisprotokoll für Ihre Anwendung zu erstellen. Auf Windows 2008 ist das, was Sie brauchen. (Ich nehme an, auch auf win7, in diesem Fall würde ich die Installation der App als Admin ausführen lassen, um der App die richtigen Rechte zu geben. Von da an müssen Sie sie nicht mehr als Administrator ausführen.) – Jeroen