Freigeben über


IMAPIFormContainer::InstallForm

Gilt für: Outlook 2013 | Outlook 2016

Installiert ein Formular in eine Formularbibliothek.

HRESULT InstallForm(
  ULONG_PTR ulUIParam,
  ULONG ulFlags,
  LPCSTR szCfgPathName
);

Parameter

ulUIParam

[in] Ein Handle auf das übergeordnete Fenster aller Dialogfelder oder Fenster, die diese Methode anzeigt. Der Parameter ulUIParam wird ignoriert, es sei denn, die Client-Anwendung setzt das MAPI_DIALOG-Flag im Parameter ulFlags. Der Parameter ulUIParam kann NULL sein, wenn MAPI_DIALOG nicht mit übergeben wird.

ulFlags

[in] Eine Bitmaske mit Flags, die die Installation des Formulars steuert. Eine der folgenden Werte kann festgelegt werden:

MAPI_DIALOG

Zeigt ein Dialogfeld an, in dem Informationen zum Fortschritt angezeigt werden oder der Benutzer aufgefordert wird, weitere Informationen einzuholen. Wenn dieses Kennzeichen nicht gesetzt ist, wird kein Dialogfenster angezeigt.

MAPI_UNICODE

Die übergebenen Zeichenketten sind im Unicode-Format. Wenn die MAPI_UNICODE-Kennzeichnung nicht festgelegt ist, liegen die Zeichenfolgen im ANSI-Format vor.

MAPIFORM_INSTALL_OVERWRITEONCONFLICT

Wenn bereits ein anderes Formular existiert, das die von diesem Formular behandelte Nachrichtenklasse behandelt, ersetzen Sie das vorhandene Formular durch dieses. Dieses Kennzeichen wird ignoriert, wenn das Kennzeichen MAPI_DIALOG ebenfalls vorhanden ist.

szCfgPfadName

[in] Der Pfad zur Konfigurationsdatei des Formulars.

Rückgabewert

S_OK

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

MAPI_E_EXTENDED_ERROR

Es ist ein Implementierungsfehler aufgetreten. Um die MAPIERROR-Struktur zu erhalten, die mit dem Fehler verbunden ist, rufen Sie die Methode IMAPIFormContainer::GetLastError auf.

MAPI_E_USER_CANCEL

Der Benutzer hat die Installation des Formulars abgebrochen, in der Regel durch Klicken auf die Schaltfläche Abbrechen in einem Dialogfeld.

Hinweise für Implementierer

Formularbibliotheksanbieter sollten eine MAPIERROR-Struktur ausfüllen und MAPI_E_EXTENDED_ERROR zurückgeben, wenn eine der folgenden Bedingungen eintritt:

  • Die Konfigurationsdatei wird nicht gefunden.

  • Die Konfigurationsdatei ist nicht lesbar.

  • Die Konfigurationsdatei ist ungültig.

Hinweise für Aufrufer

Client-Anwendungen rufen die Methode IMAPIFormContainer::InstallForm auf, um ein Formular in einem bestimmten Formular-Container zu installieren. Der Parameter szCfgPathName muss den Pfad einer Formular-Konfigurationsdatei enthalten (d. h. eine Datei mit der Erweiterung .cfg, die das Formular und seine Implementierung beschreibt). Die Flags im Parameter ulFlags geben Folgendes an:

  • Wenn das MAPI_DIALOG-Flag gesetzt ist, wird eine Benutzeroberfläche angezeigt, die es dem Benutzer, der das Formular installiert, ermöglicht, Installationsdetails anzugeben.

  • Wenn das Kennzeichen MAPIFORM_INSTALL_OVERWRITEONCONFLICT gesetzt ist, wird jedes vorherige Formular für dieselbe Nachrichtenklasse durch das zu installierende Formular ersetzt. Andernfalls wird die Formularinstallation mit der aktuellen Formularbeschreibung zusammengeführt, sofern eine solche existiert.

  • Wenn MAPI_DIALOG gesetzt ist, wird MAPIFORM_INSTALL_OVERWRITEONCONFLICT ignoriert.

  • Das Fehlen von MAPIFORM_INSTALL_OVERWRITEONCONFLICT in der Flaggengruppe bedeutet, daß eine Zusammenführung durchgeführt wird. Alle neuen Plattformen in der .cfg-Datei, die derzeit nicht in der Formularbeschreibung enthalten sind, werden installiert, und es werden keine weiteren Änderungen vorgenommen.

  • Wenn das MAPI_UNICODE-Flag gesetzt ist, ist der Pfad der Formular-Konfigurationsdatei eine Unicode-Zeichenfolge.

Clients sollten IMAPIFormContainer::GetLastError aufrufen, wenn InstallForm MAPI_E_EXTENDED_ERROR zurückgibt, und sie sollten die zurückgegebene MAPIERROR-Struktur überprüfen, um die Bedingung zu ermitteln, die den Fehler ausgelöst hat.

MFCMAPI-Referenz

Einen MFCMAP-Beispielcode finden Sie in der folgenden Tabelle.

Datei Funktion Kommentar
FormContainerDlg.cpp
CFormContainerDlg::OnInstallForm
MFCMAPI verwendet die Methode IMAPIFormContainer::InstallForm, um ein Formular in einem Formularcontainer zu installieren.

Siehe auch

MAPIERROR

IMAPIFormContainer : IUnknown

MFCMAPI (engl.) als ein Codebeispiel