Neno Lojes Vista-Tagebuch

Tag 29: Möchten Sie den Fehler jetzt senden? (Windows Error Reporting Teil 2)

Wenn unser Programm – durch eine unbehandelten Ausnahme – abstürzt oder nicht mehr reagiert währen der Benutzer versucht damit zu interagieren schaltet sich die Fehlerberichterstattung – das Windows Error Reporting (WER) von Vista ein.

Dabei muss man es als Softwarehersteller nicht bei dem Standard-Verhalten belassen. Dafür zuständig ist das native WER API aus der "WER.dll".

Wem die Informationen, die standardmäßig an die Microsoft-Server geschickt werden (z.B. der Mini-Crashdump) nicht ausreichen, der kann auch andere Dateien wie Einstellungsdateien dem Fehlerbericht hinzufügen.

Soll das Programm nach einem Fehler wieder neustarten genügt es sich beim Programmstart per API dafür einzutragen.

Auch kann man einen so genannten Recovery Callback Handler registrieren, der im Fehlerfall aufgerufen wird und die Chance gibt Rettungsaktionen durchzuführen.

Selbst ohne einen Absturz kann man einen (eigenen) Fehlerbericht senden – um andere Anwendungsereignisse zu melden, die man später selber auswertet.

Zum Thema Windows Error Reporting für Softwarehersteller betreibt Microsoft auch ein eigenes englischsprachiges Forum.

Fazit: Outlook, IE und viele andere starten nach einem Fehler automatisch neu. Mit dem WER API steht uns nun auch eine zuverlässige Möglichkeit zur Verfügung dies zu implementieren. Weiterhin empfiehlt es sich zu versuchen so viel wie möglich zu retten, z.B. die vorher geöffneten Fenster wieder zu öffnen, damit der Benutzer trotz unangenehmem Fehler so schnell wie möglich weiterarbeiten kann.

Morgen präsentieren wir ungestört – zumindest, wenn sich auch alle Anwendungen daran halten. Ist Ihre Anwendung denn auch mit dem Präsentationsmodus von Vista kompatibel?

Bis dahin viele Grüße,
Ihr Neno Loje

P.S. Übrigens: Möchten Sie gerade Windows Error Reporting für die eigene Applikation nicht nutzen trägt man diese über WerAddExcludedApplication besser aus.

Neno Loje
Freier Berater & Fachautor
Sie haben Fragen zu Visual Studio Team System (VSTS) oder Anregungen und Kommentare zu meinem Vista-Tagebuch? Dann freue ich mich auf Ihre Nachricht.

* *
* *