Freigeben über


IMAPIFormMgr::LoadForm

Gilt für: Outlook 2013 | Outlook 2016

Startet ein Formular, um eine vorhandene Nachricht zu öffnen.

HRESULT LoadForm(
  ULONG_PTR ulUIParam,
  ULONG ulFlags,
  LPCSTR lpszMessageClass,
  ULONG ulMessageStatus,
  ULONG ulMessageFlags,
  LPMAPIFOLDER pFolderFocus,
  LPMAPIMESSAGESITE pMessageSite,
  LPMESSAGE pmsg,
  LPMAPIVIEWCONTEXT pViewContext,
  REFIID riid,
  LPVOID FAR * ppvObj
);

Parameter

ulUIParam

[in] Ein Handle für das übergeordnete Fenster der Fortschrittsanzeige, die angezeigt wird, während das Formular geöffnet wird. Der ulUIParam-Parameter wird ignoriert, es sei denn, die MAPI_DIALOG-Kennzeichnung wird im ulFlags-Parameter festgelegt.

ulFlags

[in] Eine Bitmaske von Kennzeichnungen, die steuert, wie das Formular geöffnet wird. Eine der folgenden Werte kann festgelegt werden:

MAPI_DIALOG

Zeigt eine Benutzerschnittstelle an, um den Status bereitzustellen oder den Benutzer aufzufordern, weitere Informationen einzugeben. Wenn diese Kennzeichnung nicht gesetzt ist, wird keine Benutzerschnittstelle angezeigt.

MAPIFORM_EXACTMATCH

Nur Nachrichtenklassenzeichenfolgen, die eine genaue Übereinstimmung aufweisen, sollten aufgelöst werden.

lpszMessageClass

[in] Ein Zeiger auf eine Zeichenfolge, die die Nachrichtenklasse der zu ladenden Nachricht benennt. Wenn NULL im lpszMessageClass-Parameter übergeben wird, wird die Nachrichtenklasse aus der Nachricht bestimmt, auf die der pmsg-Parameter verweist.

ulMessageStatus

[in] Eine Bitmaske von clientdefinierten oder vom Anbieter definierten Flags, die aus der PR_MSG_STATUS (PidTagMessageStatus)-Eigenschaft der Nachricht kopiert wurden und Informationen über den Status der Nachricht bereitstellen. Der Parameter ulMessageStatus muss festgelegt werden, wenn lpszMessageClass ungleich NULL ist. andernfalls wird ulMessageStatus ignoriert.

ulMessageFlags

[in] Ein Zeiger auf eine Bitmaske von Kennzeichnungen, die aus der Eigenschaft PR_MESSAGE_FLAGS (PidTagMessageFlags) der Nachricht kopiert wurden, die den aktuellen Status der Nachricht angibt. Der ulMessageFlags-Parameter muss festgelegt werden, wenn lpszMessageClass ungleich NULL ist. andernfalls wird ulMessageFlags ignoriert.

pFolderFocus

[in] Ein Zeiger auf den Ordner, der die Nachricht direkt enthält. Der pFolderFocus-Parameter kann NULL sein, wenn ein solcher Ordner nicht vorhanden ist (z. B. wenn die Nachricht in eine andere Nachricht eingebettet ist).

pMessageSite

[in] Ein Zeiger auf die Nachrichtenstelle der Nachricht.

pmsg

[in] Ein Zeiger auf die Nachricht.

pViewContext

[in] Ein Zeiger auf den Ansichtskontext für die Nachricht. Der Parameter pViewContext kann NULL sein.

riid

[in] Der Schnittstellenbezeichner (Interface Identifier, IID) der Schnittstelle, die für das zurückgegebene Formularobjekt verwendet werden soll. Der riid-Parameter darf nicht NULL sein.

ppvObj

[out] Ein Zeiger auf einen Zeiger auf die zurückgegebene Schnittstelle.

Rückgabewert

S_OK

Der Aufruf erfolgreich ausgeführt und der erwartete Wert oder Werte zurückgegeben hat.

MAPI_E_NO_INTERFACE

Das Formular unterstützt die angeforderte Schnittstelle nicht.

MAPI_E_NOT_FOUND

Die in lpszMessageClass übergebene Nachrichtenklasse stimmt für kein Formular in der Formularbibliothek mit der Nachrichtenklasse überein.

Hinweise

Formular-Viewer rufen die IMAPIFormMgr::LoadForm-Methode auf, um ein Formular für eine vorhandene Nachricht zu öffnen. LoadForm öffnet das Formularobjekt, lädt die Nachricht in das Formularobjekt, richtet gegebenenfalls den entsprechenden Ansichtskontext ein und gibt die angeforderte Schnittstelle für das Formularobjekt zurück.

Der pFolderFocus-Parameter verweist auf den Ordner, der die Nachricht enthält. Wenn die Nachricht in eine andere Nachricht eingebettet ist, sollte pFolderFocus NULL sein.

Hinweise für Implementierer

Wenn NULL in lpszMessageClass übergeben wird, ruft die Implementierung die Nachrichtenklasse, den Status und die Kennzeichnungen der Nachricht aus der PR_MESSAGE_CLASS (PidTagMessageClass), PR_MSG_STATUS und PR_MESSAGE_FLAGS-Eigenschaften der Nachricht ab. Wenn eine Nachrichtenklassenzeichenfolge in lpszMessageClass bereitgestellt wird, muss die Implementierung die Werte in ulMessageStatus und ulMessageFlags verwenden.

MFCMAPI-Referenz

Einen MFCMAP-Beispielcode finden Sie in der folgenden Tabelle.

Datei Funktion Kommentar
MAPIFormFunctions.cpp
OpenMessageNonModal
MFCMAPI verwendet die IMAPIFormMgr::LoadForm-Methode, um ein Formular zu laden, bevor es angezeigt wird.

Siehe auch

PidTagMessageClass (Canonical-Eigenschaft)
PidTagMessageFlags (Canonical-Eigenschaft)
PidTagMessageStatus (Canonical-Eigenschaft)
IMAPIFormMgr : IUnknownMFCMAPI als Codebeispiel