Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Gilt für: Outlook 2013 | Outlook 2016
Schließt das Formular.
HRESULT ShutdownForm(
ULONG ulSaveOptions
);
Parameter
ulSaveOptions
[in] Ein -Wert, der steuert, wie oder ob Daten im Formular gespeichert werden, bevor das Formular geschlossen wird. Eine der folgenden Werte kann festgelegt werden:
SAVEOPTS_NOSAVE
Formulardaten sollten nicht gespeichert werden.
SAVEOPTS_PROMPTSAVE
Der Benutzer sollte aufgefordert werden, alle geänderten Daten im Formular zu speichern.
SAVEOPTS_SAVEIFDIRTY
Formulardaten sollten gespeichert werden, wenn sie sich seit dem letzten Speichern geändert haben. Wenn keine Benutzeroberfläche angezeigt wird, kann das Formular optional zur Verwendung der Funktionalität für die Option SAVEOPTS_NOSAVE wechseln.
Rückgabewert
S_OK
Das Formular wurde geschlossen.
E_UNEXPECTED
Das Formular wurde bereits durch einen vorherigen Aufruf von ShutdownForm geschlossen.
Hinweise
Formular-Viewer rufen die Methode IMAPIForm::ShutdownForm auf, um ein Formular zu schließen.
Hinweise für Implementierer
Führen Sie die folgenden Aufgaben in Ihrer Implementierung von ShutdownForm aus:
Überprüfen Sie, ob ein Viewer noch nicht ShutdownForm aufgerufen hat, und geben Sie E_UNEXPECTED zurück, sofern vorhanden. Obwohl dies unwahrscheinlich ist, sollten Sie es überprüfen.
Rufen Sie die Methode IUnknown::AddRef-Methode Ihres Formulars auf, damit Speicher für das Formular und alle internen Datenstrukturen verfügbar bleiben, bis die Verarbeitung abgeschlossen ist.
Bestimmen Sie, ob nicht gespeicherte Änderungen an den Daten des Formulars vorhanden sind. Speichern Sie nicht gespeicherte Daten entsprechend der Einstellung des Parameters ulSaveOptions durch Aufrufen der Methode IMAPIMessageSite::SaveMessage Ihres Viewers.
Zerstören Sie das Benutzeroberflächenfenster Ihres Formulars.
Geben Sie die Nachrichten- und Nachrichtenwebsiteobjekte Ihres Formulars frei, indem Sie deren Methoden IUnknown::Release aufrufen.
Benachrichtigen Sie alle registrierten Viewer über das ausstehende Herunterfahren, indem Sie ihre IMAPIViewAdviseSink::OnShutdown-Methoden aufrufen.
Rufen Sie die Methode IMAPIViewContext::SetAdviseSink auf, um die Registrierung Ihres Formulars für die Benachrichtigung aufzuheben, indem Sie den Zeiger der Empfehlungssenke auf NULL festlegen.
Rufen Sie die Funktion MAPIFreeBuffer auf, um den Arbeitsspeicher für die Eigenschaften Ihres Formulars freizugeben.
Rufen Sie die Methode IUnknown::Release Ihres Formulars auf, die dem Aufruf AddRef in Schritt 2 entspricht.
Geben Sie S_OK zurück.
Hinweis
Nachdem diese Aktionen abgeschlossen wurden, sind die einzigen gültigen Methoden für das Formularobjekt, die von der Schnittstelle IUnknown aufgerufen werden können.
Hinweise für Aufrufer
Wenn ShutdownForm zurückkehrt, geben Sie das Formular frei, indem Sie seine Methode IUnknown::Release aufrufen, unabhängig davon, ob ein Fehler zurückgegeben wird. Sie können alle von ShutdownForm zurückgegebenen Fehler ignorieren.
Siehe auch
IMAPIViewAdviseSink::OnShutdown