Freigeben über


Erstellen eines Profils mithilfe von benutzerdefiniertem Code

Gilt für: Outlook 2013 | Outlook 2016

Wenn Sie Code zum Erstellen eines Profils schreiben möchten, stellen Sie sicher, dass Sie wissen, wie Profileinträge sortiert werden, sowie den Typ und die Menge der Informationen, die für die einzelnen Einträge erforderlich sind. Die Auswirkungen der Sortierung von Einträgen in einem Profil werden unter MAPI-Profile erläutert.

So erstellen Sie ein Profil mit C- oder C++-Code

  1. Lesen Sie die Headerdatei für jeden Nachrichtendienst. Erfahren Sie, welche Eigenschaften Sie konfigurieren müssen und welche Werte Sie verwenden werden.

  2. Rufen Sie die MAPIAdminProfiles-Funktion auf, um einen IProfAdmin-Schnittstellenzeiger abzurufen.

  3. Rufen Sie IProfAdmin::CreateProfile auf, um Ihr Profil zu erstellen. Wenn Sie ein Profil mit den Nachrichtendiensten erstellen möchten, die im Abschnitt [Standarddienste] von MAPISVC aufgeführt sind. INF-Datei, legen Sie das flag MAPI_DEFAULT_SERVICE fest. Wenn Sie dem Benutzer die Eingabe von Konfigurationsinformationen ermöglichen möchten, legen Sie das flag MAPI_DIALOG fest. Stellen Sie sicher, dass Sie dieses Flag festlegen, wenn nicht alle erforderlichen Informationen über MAPISVC verfügbar sind. INF-Datei. CreateProfile ruft die Einstiegspunktfunktion für jeden Nachrichtendienst auf, der dem Profil hinzugefügt werden soll, wobei MSG_SERVICE_CREATE als ulContext-Parameter festgelegt ist.

  4. Rufen Sie IProfAdmin::AdminServices auf, um ein Nachrichtendienstverwaltungsobjekt abzurufen.

  5. Verwenden Sie das Nachrichtendienstverwaltungsobjekt, um dem Profil Nachrichtendienste hinzuzufügen. Für jeden Nachrichtendienst, den Sie hinzufügen möchten:

  6. Rufen Sie die IMsgServiceAdmin::CreateMsgService-Methode auf, um den neuen Nachrichtendienst zu erstellen.

  7. Rufen Sie IMsgServiceAdmin::ConfigureMsgService auf, und übergeben Sie dabei die MAPIUID-Struktur des soeben erstellten Diensts und ein Eigenschaftswertarray mit seinen Konfigurationseigenschaften.

  8. Um den Bezeichner eines neu hinzugefügten Diensts abzurufen, der seine PR_SERVICE_UID (PidTagServiceUid)-Eigenschaft ist, rufen Sie IMsgServiceAdmin::GetMsgServiceTable auf, um auf die Nachrichtendiensttabelle zuzugreifen und nach der Zeile zu suchen, die den Nachrichtendienst darstellt. Die letzte Zeile in der Tabelle stellt den zuletzt hinzugefügten Nachrichtendienst dar.

Um ein neues Profil temporär zu machen, rufen Sie die IProfAdmin::D eleteProfile-Methode unmittelbar nach der Anmeldung auf. DeleteProfile markiert das neue Profil als gelöscht, während es für die Dauer der Sitzung verwendet werden kann. Da es nicht in der Profiltabelle der Sitzung enthalten ist, können andere Clients sie nicht verwenden.