Outlook stürzt unter Windows 2008 häufig ab

Ich habe vor Kurzem bei einem Kunden eine Migration von Exchange 2003 auf Exchange 2010 durchgeführt. Die Migration lief relativ problemlos durch, so daß ich das Projekt als abgeschlossen betrachtet habe. Vor einigen Tagen aber bekam ich den Anruf, dass nach der Umstellung der Terminalserver von Windows 2003 als Plattform auf Windows 2008 R2 es zu häufigen Abstürzen beim Start von Outlook 2003 kommt.

Leider war die Fehlermeldung nicht sehr aussagekräftig (der Fehlermodulname variierte), so daß mit ProcMon versucht habe, dem Fehler auf die Spur zu kommen. Zuerst hatten wir den verdacht, daß Überreste einer Scan2EMail-Software die Ursache waren; dieser verdacht bestätigte sich aber nicht. Nach längerer erfolgloser Suche blieb mir als letzte Waffe dann eigentlich nur noch der Einsatz eines Debuggers;w as mir aber auf einem terminalserver irgendwie widerstrebte;-)

Ich habe mir stattdessen noch mal die Fehlermeldun und die Einträge im ereignisprotokoll angeschaut. Eine Eingabe des Fehlercodes c0000005 und des Problemereignisnamens BEX in Google brachte dann die Lösung.

Seit Windows XP SP2 gibt es das Feature DEP (Data Execution Prevention); mit dem bestimmte Speicherbereiche als nicht ausführbar markiert werden. In 64-Bit Betriebssystemen ist das Feature aktiviert und hier wird auch Hardware-seitiges DEP genutzt (NX-Flag gesetzt). Leider scheint Outlook 2003 damit nicht zurecht zu kommen.

Wie sieht nun die Lösung aus?

Outlook 2003 muss auf den Citrix-Servern in die DEP-Ausnahmeliste aufgenommen werden. Dazu wird zuerst über einen Kommandozeilenbefehl der aktuelle Richtlinien-Level geprüft:

wmic OS Get DataExecutionPrevention_SupportPolicy

Es gibt vier Stufen:

  • 0 – Always Off – DEP für alle Prozesse ausschalten
  • 1 – Always On – DEP für alle Prozesse einschalten
  • 2 – Optin (Standard) – DEP für erforderliche Windows Programme einschalten
  • 3 – Optout – DEP für alle Programme einschalten außer die von mir ausgewählten. Der Admin kann eine DEP Exception Liste erstellen

Die gewünschte Stufe ist „3 – Optout“.

Falls die aktuelle Stufe einen anderen Wert aufweist, muss der Wert angepasst werden. Dazu nutzt man den folgenden Befehl:

bcdedit.exe /set {current} nx OptOut

Wichtig: der Server muss danach neu gestartet werden.

Danach ruft man den Server-Manager auf. Unter

„Systemeigenschaften ändern“ -> „Erweitert“ -> „Leistung“ -> „Datenausführungsverhinderung“

kann nun Outlook eingetragen werden.

Weitere Informationen:

In dem Artikel wird Outlook über die Registry der Ausnahmeliste hinzugefügt

]]>

Dieser Beitrag wurde unter Uncategorized veröffentlicht. Setze ein Lesezeichen auf den Permalink.