Freigeben über


IMAPIMessageSite::DeleteMessage

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::D eleteMessage-Methode auf, um die Aktuell angezeigte Nachricht zu löschen.

Hinweise für Aufrufer

Nach der Rückgabe von DeleteMessage müssen Formularobjekte nach einer neuen Nachricht suchen und sich dann selbst verwerfen, wenn keine vorhanden ist. Um zu bestimmen, ob die Nachricht gelöscht oder in einen Ordner Gelöschte Elemente verschoben wurde, kann ein Formularobjekt die IMAPIMessageSite::GetSiteStatus-Methode aufrufen, um zu bestimmen, ob das DELETE_IS_MOVE-Flag zurückgegeben wurde.

Hinweise für Implementierer

Wenn die Implementierung eines Formular-Viewers der DeleteMessage-Methode nach dem Löschen einer Nachricht zur nächsten Nachricht wechselt, sollte die Implementierung die IMAPIViewContext::ActivateNext-Methode aufrufen und das VCDIR_DELETE-Flag übergeben, bevor der eigentliche Löschvorgang ausgeführt wird. Wenn die DeleteMessage-Implementierung eines Formular-Viewers 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:

  1. Wenn die Implementierung die Nachricht verschiebt, ruft sie die IPersistMessage::Save-Methode auf, wobei null im pMessage-Parameter und true im fSameAsLoad-Parameter übergeben wird.

  2. Sie ruft die IMAPIViewContext::ActivateNext-Methode auf und übergibt das VCDIR_DELETE-Flag im ulDir-Parameter .

  3. Wenn der ActivateNext-Aufruf fehlschlägt, wird er zurückgegeben. Wenn ActivateNext S_FALSE zurückgibt, wird die IPersistMessage::HandsOffMessage-Methode aufgerufen.

  4. Die Nachricht wird gelöscht oder verschoben.

Um die RECT-Struktur abzurufen, die vom Fenster eines Formulars verwendet wird, rufen Sie die Windows GetWindowRect-Funktion 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::D eleteMessage
Nicht implementiert.

Siehe auch

IMAPIMessageSite::GetSiteStatus

IMAPIViewContext::ActivateNext

IPersistMessage::HandsOffMessage

IPersistMessage::Save

IMAPIMessageSite : IUnknown

MFCMAPI (engl.) als ein Codebeispiel

MAPI-Formularschnittstellen