Wann immer in den Microsoft .NET-basierten SF-Anwendung ein unerwarteter Fehler zur Laufzeit eines Programms auftritt, versuchen die Programme, Diagnoseinformationen für eine spätere Analyse ins Windows-Anwendungs-Ereignisprotokoll zu schreiben. Dazu verwenden wir eine standardisierte Microsoft-Komponente, die die Ereignisquelle ExceptionManagerPublishedException verwendet. Diese Ereignisquelle muss auf dem Computer, auf dem die SF-Anwendung läuft, registriert sein, damit die Diagnoseinformationen geschrieben werden können.
Die Ereignisquelle kann wie folgt registriert werden:
Da fast alle SF-Software einfach dadurch ausgeführt werden kann, dass die jeweilige .exe-Datei z.B. von einem Fileserver gestartet wird, ist für die meisten Installationen die Ausführung eines Installationsprogramms nicht notwendig. Da die Programme aber wie empfohlen ohne administrative Berechtigungen ausgeführt werden, kann es also sein, dass die Ereignisquelle nie registriert wurde und auch zur Fehlerzeit nicht registriert werden kann. Dadurch fehlen die nützlichen Diagnoseinformationen, falls ein Laufzeitfehler auftreten sollte.
Als Teil des Microsoft .NET Frameworks wird ein Programm namens InstallUtil.exe installiert, dass diese Aufgabe übernehmen kann. Sie finden dieses Programm im Installationsverzeichnis von Microsoft .NET und müssen es einmal pro Computer mit administrativen Berechtigungen und unter Angabe des vollständigen Pfades zu einer Kopie der mit den SF-Anwendungen ausgelieferten Datei Microsoft.ApplicationBlocks.ExceptionManagement.dll ausführen.
Für ein typisches System mit installiertem Microsoft .NET Framework 4.x können Sie das so tun:
C:\Windows\Microsoft.NET\Framework\v4.0.30319\InstallUtil.exe "C:\Program Files\SF Softwareberatung\SF Buchungsplan Offline-Client\Microsoft.ApplicationBlocks.ExceptionManagement.dll"
Der erste Pfad muss zu einer existierenden Fassung der InstallUtil.exe des .NET-Frameworks führen, der zweite Pfad zu einer Kopie der Microsoft.ApplicationBlocks.ExceptionManagement.dll.
Sie können die Registrierung durch Lesen der Ausgabe der InstallUtil.exe oder durch Filtern in der Windows Ereignisanzeige überprüfen.
Eine Beispielausgabe der InstallUtil.exe sieht so aus, und der fettgesetzte Teil zeigt den Erfolg an:
PS C:\Windows\system32> C:\Windows\Microsoft.NET\Framework\v4.0.30319\InstallUtil.exe 'C:\Program Files\SF Softwareberatung\SF Buchungsplan Offline-Client\Microsoft.ApplicationBlocks.ExceptionManagement.dll'
Microsoft (R) .NET Framework-Installationsprogramm, Version 4.6.1098.0
Copyright (C) Microsoft Corporation. Alle Rechte vorbehalten.
Eine transaktive Installation wird ausgeführt.
Die Installationsphase wird gestartet.
Die Protokolldatei enthält den Fortschritt der Assembly C:\Program Files\SF Softwareberatung\SF Buchungsplan Offline-Client\Microsoft.ApplicationBlocks.ExceptionManagement.dll.
Die Datei befindet sich in C:\Program Files\SF Softwareberatung\SF Buchungsplan Offline-Client\Microsoft.ApplicationBlocks.ExceptionManagement.InstallLog.
Assembly C:\Program Files\SF Softwareberatung\SF Buchungsplan Offline-Client\Microsoft.ApplicationBlocks.ExceptionManagement.dll wird installiert.
Betroffene Parameter:
logtoconsole =
logfile = C:\Program Files\SF Softwareberatung\SF Buchungsplan Offline-Client\Microsoft.ApplicationBlocks.ExceptionManagement.InstallLog
assemblypath = C:\Program Files\SF Softwareberatung\SF Buchungsplan Offline-Client\Microsoft.ApplicationBlocks.ExceptionManagement.dll
Die EventLog-Quelle ExceptionManagerInternalException im Protokoll Application wird erstellt...
Die EventLog-Quelle ExceptionManagerPublishedException im Protokoll Application wird erstellt...
Die Installationsphase ist abgeschlossen, und die Commitphase beginnt.
Die Protokolldatei enthält den Fortschritt der Assembly C:\Program Files\SF Softwareberatung\SF Buchungsplan Offline-Client\Microsoft.ApplicationBlocks.ExceptionManagement.dll.
Die Datei befindet sich in C:\Program Files\SF Softwareberatung\SF Buchungsplan Offline-Client\Microsoft.ApplicationBlocks.ExceptionManagement.InstallLog.
Assembly C:\Program Files\SF Softwareberatung\SF Buchungsplan Offline-Client\Microsoft.ApplicationBlocks.ExceptionManagement.dll wird ausgeführt.
Betroffene Parameter:
logtoconsole =
logfile = C:\Program Files\SF Softwareberatung\SF Buchungsplan Offline-Client\Microsoft.ApplicationBlocks.ExceptionManagement.InstallLog
assemblypath = C:\Program Files\SF Softwareberatung\SF Buchungsplan Offline-Client\Microsoft.ApplicationBlocks.ExceptionManagement.dll
Die Commitphase wurde erfolgreich abgeschlossen.
Die transaktive Installation ist abgeschlossen.
Zur Überprüfung im Ereignisprotokoll gehen sie wie folgt vor:
Die Ereignisquelle sollte auf jedem Computer registriert sein, auf dem SF-Software ausgeführt wird. Dadurch können Laufzeitfehler jederzeit auch rückwirkend analysiert werden, solange die Ereignisprotokoll-Einträge noch auf dem System befindlich oder zentral gesammelt worden sind.
Wenn Benutzer unerwartete Fehlermeldungen von SF-Programmen erhalten, wird - bei registrierter Ereignisquelle ExceptionManagerPublishedException - ein Ereignisprotokoll-Eintrag im Windows-Anwendungs-Protokoll mit ausführlichen Diagnoseinformationen geschrieben. Möglicherweise werden Sie von uns aufgefordert, uns die genauen Meldungen solcher Ereignisse zu übermitteln. Gehen Sie dazu bitte wie folgt vor:
Bitte senden Sie uns vorrangig den so gewonnenen vollständigen Meldungstext der Ereignismeldungen und höchstens ergänzend noch Bildschirmfotos. Auf diese Weise helfen Sie ganz enorm mit, die Ursachen für etwaige unerwartete Fehlermeldungen zu finden. Herzlichen Dank!
Nach oben • Kontakt • Impressum • Datenschutzerklärung • Sitemap