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
Löscht die aktuelle Nachricht.
HRESULT DeleteMessage(
LPMAPIVIEWCONTEXT pViewContext,
LPCRECT prcPosRect
);
Parameter
pViewContext
[in] Ein Zeiger auf ein Ansichtskontextobjekt.
prcPosRect
[in] Ein Zeiger auf eine RECT-Struktur, die die Fenstergröße und -position des aktuellen Formulars enthält. Das nächste angezeigte Formular verwendet ebenfalls dieses Fensterrechteck.
Rückgabewert
S_OK
Der Aufruf erfolgreich ausgeführt und der erwartete Wert oder Werte zurückgegeben hat.
MAPI_E_NO_SUPPORT
Der Vorgang wird von dieser Nachrichtenwebsite nicht unterstützt.
Hinweise
Ein Formularobjekt ruft die IMAPIMessageSite::DeleteMessage-Methode auf, um die Meldung zu löschen, die das Formular derzeit anzeigt.
Hinweise für Aufrufer
Nach der Rückgabe von DeleteMessagemüssen Formularobjekte nach einer neuen Nachricht suchen und sich dann selbst schließen, wenn keine vorhanden ist. Um zu bestimmen, ob die Nachricht, auf die DeleteMessage reagiert hat, gelöscht oder in einen Ordner Gelöschte Elemente verschoben wurde, kann ein Formularobjekt die IMAPIMessageSite::GetSiteStatus-Methode aufrufen, um zu bestimmen, ob die DELETE_IS_MOVE-Kennzeichnung zurückgegeben wurde.
Hinweise für Implementierer
Wenn die Implementierung der DeleteMessage-Methode einer Formularanzeige zur nächsten Nachricht wechselt, nachdem eine Nachricht gelöscht wurde, sollte die Implementierung die IMAPIViewContext::ActivateNext-Methode aufrufen und die VCDIR_DELETE-Kennzeichnung übergeben, bevor der eigentliche Löschvorgang vorgenommen wird. Wenn die Implementierung von DeleteMessage der Formularanzeige die gelöschte Nachricht verschiebt (z. B. in einen Ordner Gelöschte Elemente), muss die Implementierung Änderungen an der Nachricht speichern, wenn die Nachricht geändert wurde.
Eine typische Implementierung von DeleteMessage führt die folgenden Aufgaben aus:
Wenn die Implementierung die Nachricht verschiebt, ruft sie die IPersistMessage::Save-Methode auf und übergibt null im pMessage-Parameter und TRUE im fSameAsLoad-Parameter.
Sie ruft die IMAPIViewContext::ActivateNext-Methode auf und übergibt die VCDIR_DELETE-Kennzeichnung im ulDir-Parameter.
Wenn der ActivateNext-Aufruf fehlschlägt, wird er zurückgegeben. Wenn ActivateNext S_FALSE zurückgibt, wird die IPersistMessage::HandsOffMessage-Methode aufgerufen.
Die Nachricht wird gelöscht oder verschoben.
Um die RECT-Struktur abzurufen, die vom Fenster eines Formulars verwendet wird, rufen Sie die Windows-Funktion GetWindowRect auf.
Eine Liste der Schnittstellen im Zusammenhang mit Formularservern finden Sie unter MAPI-Formularschnittstellen.
MFCMAPI-Referenz
Einen MFCMAP-Beispielcode finden Sie in der folgenden Tabelle.
| Datei | Funktion | Kommentar |
|---|---|---|
| MyMAPIFormViewer.cpp |
CMyMAPIFormViewer::DeleteMessage |
Nicht implementiert. |
Siehe auch
IMAPIMessageSite::GetSiteStatus
IMAPIViewContext::ActivateNext
IPersistMessage::HandsOffMessage