E-Mails bleiben am Exchange-Server im Postausgang hängen (Cached Mode)
Verwendet man den Cached Mode in Outlook 2007 zusammen mit Exchange 2007/2010 kann es vorkommen, dass bereits versendete E-Mails serverseitig noch als Kopie im Postausgang stehen bleiben. Da diese Elemente im Outlook-Client nicht sichtbar sind, führt es ggf. dazu, dass betroffene Benutzer trotz vermeintlich leeren Postfachs Warnungen bzgl. der Postfachbegrenzung erhalten, oder auch keine E-Mails mehr versenden können.
Betrachtet man nun in Outlook die Größe der einzelnen Ordner des Postfachs, kann man sehen, dass sich die Ordnergröße des Postausgangs in lokalen (i.d.R. 0 KB) und Serverdaten unterscheidet.
Greift man über Outlook Web Access (OWA) auf das Postfach zu, oder deaktiviert den Cached Mode, so kann auf die Elemente zugegriffen werden.
Möchte man herausfinden, welche Postfächer noch Elemente im Postausgang enthalten, kann man in der Exchange-Verwaltungsshell mit folgendem Befehl eine Liste (HTML) erstellen:
Get-Mailbox | Get-MailBoxFolderStatistics | Where {$_.FolderType -eq "Outbox" -and $_.FolderSize -gt 0} | ` ConvertTo-Html Identity, ItemsInFolder, FolderSize | Set-Content MyFile.htm
Um das Problem für die Zukunft zu vermeiden, kann nach KB948984 der folgende Registrierungsschlüssel (und ggf. auch der Hotfix KB948716) an die betroffenen Benutzer verteilt werden:
[HKEY_CURRENT_USER\Software\Microsoft\Office\12.0\Outlook\Cached Mode]
„SendOne“=dword:00000000
Lt. KB948984 verhält sich der Cache Mode beim Versand einer E-Mail mit Outlook 2007 durch Anwendung des Registrierungsschlüssels, wie die vorherigen Outlook/Exchange-Versionen und die E-Mail wird wieder zweimal – statt nur einmal – auf den Exchange-Server synchronisiert.
Elemente entfernen
Leider wird durch den Reg-Key nur verhindert, dass sich weitere Elemente im Postausgang ansammeln; die bereits dort „hängengebliebenen“ Nachrichten werden nicht automatisch entfernt.
Der folgende Befehl ist nur unter Exchange 2007 (u. 2010 ohne SP) ausführbar. Das Cmdlet Export-Mailbox ist ab Exchange 2010 SP1 nicht mehr verfügbar.
Doch können sie auch relativ einfach mit der Verwaltungsshell aus den Postfächern in ein temporäres Postfach verschoben und anschließend gelöscht werden:
Get-Mailbox <MailBox> | Export-Mailbox -IncludeFolders "\Postausgang" -DeleteContent ` -TargetMailbox <ZielMailbox> -TargetFolder <Zielordner> –Confirm:$false
<Mailbox> ist hier das Quellpostfach, aus dessen Postausgang die Elemente entfernt werden sollen; als <ZielMailbox> und <Zielordner> sind ein weiteres Postfach und ein darin enthaltener Ordner als Ziel der Elemente anzugeben.
Mit installiertem Outlook 2003 SP2 (oder höher) kann unter Verwendung des Parameters -PSTFolderPath auch eine PST-Datei als Export-Ziel dienen.
Zur Durchführung des Exports benötigt der ausführende Benutzer die Berechtigung Vollzugriff sowohl auf das Quell- als auch auf das Zielpostfach; andernfalls erhält man diese Fehler:
Keine Berechtigung ‚Vollzugriff‘ Quell-Mailbox:
Fehler im Schritt: Die Nachrichten werden verschoben. Fehler
beim Kopieren von Nachrichten in den Zielpostfachspeicher:
MAPI oder ein nicht angegebener Dienstanbieter.
ID: 00000000-0000-00000000., Fehlercode: -1056749164.
Keine Berechtigung ‚Vollzugriff‘ Ziel-Mailbox:
Fehler im Schritt: Der Zielordner wird im Zielpostfach erstel
lt. Unbekannter Fehler., Fehlercode: -2147221233.
Da die Bearbeitung jedes einzelnen Postfachs recht mühselig werden kann, habe ich die Schritte in einem kleinen Skript zusammengefasst: Es bearbeitet alle Postfächer, die Elemente im Postausgang enthalten und noch unterhalb des Limits liegen. Für diese Postfächer wird der angegebene Benutzer auf das Postfach berechtigt, der Export durchgeführt und die Berechtigung des Users wieder entfernt; die Konfiguration wird über die Variablen im oberen Teil des Skripts durchgeführt -> Download
Während des Exports sollte sichergestellt sein, dass von den betroffenen Postfächern keine E-Mails gesendet werden. Auch regulär im Transfer befindliche E-Mails werden aus den Postfächern exportiert und gelöscht!
Download
Links
- Microsoft KB948984: An Outlook 2007 e-mail message remains in the Outbox after you move it to a personal folder
- Microsoft KB948716: Outlook 2007 hotfix package: February 7, 2008
26. April 2012 um 20:02 Uhr - -
Hallo!
Sehr schöner Beitrag, der genau unser Problem trifft. Vielen Dank!
Tritt dieses Problem denn auch mit Office 2010 auf? Muss dann der Registry-Key einfach nur auf Office 14 angepasst werden?
Danke! Christoph.
26. April 2012 um 23:48 Uhr - -
Hallo Christoph,
> Tritt dieses Problem denn auch mit Office 2010 auf?
Kann es Dir zwar nicht garantieren, doch meine Beobachtungen stimmten mit dem KB-Artikel überein: nur Outlook 2007.
> Muss dann der Registry-Key einfach nur auf Office 14 angepasst werden?
Könnte man im Zweifelsfall versuchen ❓
4. Juni 2012 um 09:26 Uhr - -
Hallo,
das Problem trifft in der Tat auch ouf Outlook 2010 zu.
Leider exisitiert unter HKEY_LOCAL_MACHINESOFTWAREMicrosoftOffice14.0Outlook
kein Schlüssel CachedMode.
Ich habe den SendOne Key, wie virgeschalgen, dann einfach unter
HKEY_LOCAL_MACHINESOFTWAREMicrosoftOffice14.0OutlookCached Mode
angelegt, jedoch scheint Outlook nicht darauf zuzugreifen.
(Habe es mit einem RegistryMonitor geprüft)
Wenn also jemand eine Idee hat, wie man Outlook 2010 bei diesem Problem in den Griff bekommt,
ich wäre sehr dankbar.
Viele Grüße,
Marc
17. Januar 2014 um 12:09 Uhr - -
Hallo aus Berlin,
soweit funktioniert alles. Aber der Abschnitt „Elemente entfernen“ will nicht so richtig.
Can you help me?