Freigeben über


Anmelden bei MAPI

Gilt für: Outlook 2013 | Outlook 2016

Clientanwendungen melden sich beim MAPI-Subsystem an, indem sie die MAPILogonEx-Funktion aufrufen. Weitere Informationen finden Sie unter MAPILogonEx. MAPILogonEx überprüft die Profilauswahl und die Konfiguration der einzelnen Dienstanbieter im Profil. Nach der Konfiguration startet MAPI die Adressbuchanbieter, bevor die Nachrichtenspeicheranbieter gestartet werden. Transportanbieter werden gestartet, wenn ihre Dienste zuerst benötigt werden.

Auswählen eines Profils

  • Übergeben Sie eine Zeichenfolge, die den Namen des Profils im lpszProfileName-Parameter darstellt, an MAPILogonEx, oder...

  • Zulassen, dass der Benutzer das Profil angeben kann, indem er NULL im lpszProfileName-Parameter übergibt und das MAPI_LOGON_UI-Flag festlegt, oder...

  • Wählen Sie das Standardprofil aus, indem Sie NULL im lpszProfileName-Parameter übergeben und das MAPI_USE_DEFAULT-Flag festlegen.

Wenn Sie ein anderes Profil als das Standardprofil benötigen, müssen Sie dessen Namen in Ihrer eigenen Konfigurationsdatenbank speichern oder eine bestimmte Benennungskonvention verwenden. MAPI macht keine anderen Profilattribute als den Namen und das Standardflag in der Profiltabelle verfügbar, und das Standardprofilflag ist für Messagingclient- und zugehörige IPM-Anwendungen reserviert.

Clients, die MAPILogonEx teilweise Profil- oder Anbieterkonfigurationsinformationen bereitstellen, müssen den Benutzer zur Eingabe der zusätzlichen Daten auffordern, indem sie die Anzeige eines Dialogfelds zulassen. Wenn Informationen fehlen und MAPILogonEx den Benutzer nicht auffordern kann, sie anzugeben, schlägt die Anmeldung fehl. Clients, die keine Benutzereingaben benötigen, können die Anzeige des Dialogfelds unterdrücken.

Die Flags, die MAPILogonEx zum Aktivieren einer Benutzeroberfläche verwendet, schließen sich gegenseitig aus. es kann nur eine festgelegt werden. Wenn Diese Flags nicht festgelegt werden, wird die Anzeige einer Benutzeroberfläche unterdrückt, was dazu führt, dass MAPILogonEx fehlschlägt, wenn die erforderlichen Informationen fehlen. Das heißt, wenn Sie die Benutzeroberfläche deaktivieren und NULL für den lpszProfileName-Parameter übergeben und das MAPI_USE_DEFAULT-Flag nicht festlegen, schlägt MAPILogonEx fehl, da kein Profilname abgerufen werden kann.

Die von MAPILogonEx festgelegte Sitzung kann eine einzelne Messagingsitzung, eine freigegebene Messagingsitzung oder eine sitzung ohneMessaging sein. Einzelne Messagingsitzungen sind private Verbindungen zwischen Ihrem Client und dem MAPI-Subsystem und können durch Festlegen des MAPI_NEW_SESSION-Flags im Aufruf von MAPILogonEx hergestellt werden.

Freigegebene Messagingsitzungen sind Verbindungen, die von mehreren Messagingclients verwendet werden können. Freigegebene Sitzungen werden in der Regel für Clients eingerichtet, die dasselbe Profil verwenden. Um eine neue Sitzung als freigegebene Sitzung einzurichten, legen Sie das flag MAPI_ALLOW_OTHERS fest.

Verwenden einer vorhandenen freigegebenen Sitzung

  • Legen Sie das MAPI_NEW_SESSION-Flag nicht fest.

  • Legen Sie nicht das MAPI_ALLOW_OTHERS-Flag fest.

  • Übergeben Sie NULL für den lpszProfileName-Parameter .

  • Übergeben Sie NULL für den lpszPassword-Parameter .

Nichtmessagingsitzungen ermöglichen Clients den Zugriff auf das MAPI-Subsystem, lassen jedoch nicht zu, dass Nachrichten gesendet oder empfangen werden. Konfigurations- oder Verwaltungsanwendungen sind Beispiele für Clients, die möglicherweise nichtmessagingsitzungen einrichten müssen. Um eine nichtmessende Sitzung anzufordern, legen Sie das flag MAPI_NO_MAIL fest. Wenn Sie dieses Flag festlegen, wird Ihr Client auf protokolliert, ohne den MAPI-Spooler darüber zu informieren. Clients, die sich mit diesem Flag bei MAPI anmelden, können nicht erwarten, dass sie jemals gelesene status Berichte erhalten.

Das MAPI_NO_MAIL-Flag sollte nur festgelegt werden:

  • Wenn Ihr Client während der Sitzung keine Nachrichten sendet oder empfängt.

  • Wenn Ihr Client die vollständige Kontrolle über den Inhalt des Profils hat und Nachrichten mithilfe von eng gekoppelten Nachrichtenspeicher- und Transportanbietern wie den Microsoft Exchange-Anbietern gesendet und empfangen werden.

Ein Messagingclient kann eine Sitzung für einen nichtmessagingenden Client freigeben. Die Merkmale eines Mitglieds einer freigegebenen Sitzung werden von den Merkmalen anderer Mitglieder nicht beeinflusst. Das heißt, wenn Sie sich mit dem MAPI_NO_MAIL anmelden und MAPI_ALLOW_OTHERS Flags festgelegt sind, hat ein Messagingclient, der sich bei Ihrer Sitzung anmeldet, keine Auswirkungen auf den Betrieb Ihres Clients und umgekehrt. Der Messagingclient kann weiterhin Nachrichten senden und empfangen, ihr Client nicht.

MAPILogonEx definiert einige weitere Flags, die Sie festlegen können:

  • MAPI_FORCE_DOWNLOAD gibt an, dass eingehende Nachrichten heruntergeladen werden sollen, bevor MAPILogonEx zurückgibt. Wenn Dieses Flag nicht festgelegt wird, werden Nachrichten zu einem späteren Zeitpunkt im Hintergrund heruntergeladen.

  • MAPI_SERVICE_UI_ALWAYS fordert an, dass jeder Nachrichtendienst im Profil ein Konfigurationsdialogfeld anzeigt.

  • MAPI_NT_SERVICE gibt an, dass Ihr Client als Windows-Dienst implementiert ist. Dieses Flag muss festgelegt werden, wenn Es sich bei Ihrem Client um einen Dienst handelt.

Bei jeder erfolgreichen Anmeldung gibt MAPILogonEx einen Zeiger auf eine MAPI-Sitzung zurück. Sie können diesen Zeiger verwenden, um die Methoden der IMAPISession-Schnittstelle aufzurufen. Weitere Informationen finden Sie unter IMAPISession : IUnknown. Sitzungszeiger sind unabhängig vom Sitzungstyp für die Clients, die sie empfangen, eindeutig und nicht aufgabenübergreifend gültig.