IMAPIFormContainer::InstallForm
Gilt für: Outlook 2013 | Outlook 2016
Installiert ein Formular in einer Formularbibliothek.
HRESULT InstallForm(
ULONG_PTR ulUIParam,
ULONG ulFlags,
LPCSTR szCfgPathName
);
Parameter
ulUIParam
[in] Ein Handle für das übergeordnete Fenster aller Dialogfelder oder Fenster, die von dieser Methode angezeigt werden. Der ulUIParam-Parameter wird ignoriert, es sei denn, die Clientanwendung legt das flag MAPI_DIALOG im ulFlags-Parameter fest. Der ulUIParam-Parameter kann NULL sein, wenn nicht auch MAPI_DIALOG übergeben wird.
ulFlags
[in] Eine Bitmaske von Flags, die die Installation des Formulars steuert. Die folgenden Flags können festgelegt werden:
MAPI_DIALOG
Zeigt ein Dialogfeld an, in dem Statusinformationen bereitgestellt oder der Benutzer zur Eingabe weiterer Informationen aufgefordert wird. Wenn dieses Flag nicht festgelegt ist, wird kein Dialogfeld angezeigt.
MAPI_UNICODE
Die übergebenen Zeichenfolgen liegen im Unicode-Format vor. Wenn das MAPI_UNICODE-Flag nicht festgelegt ist, liegen die Zeichenfolgen im ANSI-Format vor.
MAPIFORM_INSTALL_OVERWRITEONCONFLICT
Wenn bereits ein anderes Formular vorhanden ist, das die von diesem Formular behandelte Nachrichtenklasse behandelt, ersetzen Sie das vorhandene Formular durch dieses Formular. Dieses Flag wird ignoriert, wenn das MAPI_DIALOG-Flag ebenfalls vorhanden ist.
szCfgPathName
[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
Implementierungsfehler. Um die MAPIERROR-Struktur abzurufen, die dem Fehler zugeordnet ist, rufen Sie die IMAPIFormContainer::GetLastError-Methode 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 vorliegt:
Die Konfigurationsdatei wurde nicht gefunden.
Die Konfigurationsdatei ist nicht lesbar.
Die Konfigurationsdatei ist ungültig.
Hinweise für Aufrufer
Clientanwendungen rufen die IMAPIFormContainer::InstallForm-Methode auf, um ein Formular in einem bestimmten Formularcontainer zu installieren. Der szCfgPathName-Parameter muss den Pfad einer Formularkonfigurationsdatei enthalten (d. h. eine Datei mit der Erweiterung .cfg, die das Formular und seine Implementierung beschreibt). Die Flags im ulFlags-Parameter geben Folgendes an:
Wenn das MAPI_DIALOG-Flag festgelegt ist, wird eine Benutzeroberfläche angezeigt, über die der Benutzer, der das Formular installiert, Installationsdetails angeben kann.
Wenn das MAPIFORM_INSTALL_OVERWRITEONCONFLICT-Flag festgelegt 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 vorhanden.
Wenn MAPI_DIALOG festgelegt ist, wird MAPIFORM_INSTALL_OVERWRITEONCONFLICT ignoriert.
Das Fehlen von MAPIFORM_INSTALL_OVERWRITEONCONFLICT im Flagsatz bedeutet, dass eine Zusammenführung durchgeführt wird. Alle neuen Plattformen in der CFG-Datei, die derzeit nicht in der Formularbeschreibung vorhanden sind, werden installiert, und es werden keine weiteren Änderungen vorgenommen.
Wenn das MAPI_UNICODE-Flag festgelegt ist, ist der Pfad der Formularkonfigurationsdatei 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 bestimmen, 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 IMAPIFormContainer::InstallForm-Methode , um ein Formular in einem Formularcontainer zu installieren. |