Freigeben über


IProfSect : IMAPIProp

Gilt für: Outlook 2013 | Outlook 2016

Funktioniert mit den Eigenschaften von Profilabschnittsobjekten.

Eigenschaft Wert
Headerdatei
Mapix.h
Verfügbar gemacht von:
Profilabschnittsobjekte
Implementiert von:
MAPI
Aufgerufen von:
Clientanwendungen und Dienstanbieter
Schnittstellenbezeichner:
IID_IProfSect
Zeigertyp:
LPPROFSECT
Transaktionsmodell:
Nontransacted

Vtable-Reihenfolge

Diese Schnittstelle hat keine einzigartigen Methoden.

Erforderliche Eigenschaften Access
PR_OBJECT_TYPE (PidTagObjectType)
Schreibgeschützt
PR_PROFILE_NAME (PidTagProfileName)
Schreibgeschützt

Hinweise für Aufrufer

Die IProfSect-Schnittstelle verfügt über keine eigenen eindeutigen Methoden. Sie können jedoch die IMAPIProp--Methoden des Profilabschnitts aufrufen. Es gibt einige Unterschiede zwischen der IProfSect-Implementierung und anderen Implementierungen von IMAPIProp:

  • IProfSect unterstützt kein Transaktionsmodell.

  • IProfSect unterstützt keine benannten Eigenschaften.

  • IProfSect reserviert den Bezeichnerbereich 0x67F0 für sichere Eigenschaften 0x67ff.

Das Nichtunterstützen eines Transaktionsmodells bedeutet, dass alle Änderungen, die nach Aufrufen der MethodenIMAPIProp::CopyProps und IMAPIProp::CopyTo an einem Profilabschnitt vorgenommen wurden, sofort erfolgen. Aufrufe der IMAPIProp::SaveChanges--Methode sind erfolgreich, speichern aber keine Änderungen.

Um vor vorzeitigen Änderungen geschützt zu werden, müssen Dienstanbieter Kopien ihrer Profilabschnitte erstellen, die Benutzern über Eigenschaftenblätter angezeigt werden. Die Eigenschaftenblätter sollten mit der Kopie anstelle des echten Profilabschnitts funktionieren. Wenn der Benutzer auf die Schaltfläche OK klickt, um zu überprüfen, ob die Änderungen korrekt sind, können die Änderungen im echten Profilabschnitt gespeichert werden.

Um ein Eigenschaftenblatt mithilfe eines kopierten Profilabschnitts zu implementieren, gehen Sie wie folgt vor:

  1. Öffnen Sie den Profilabschnitt, indem Sie die IMAPISupport::OpenProfileSection oder IProviderAdmin::OpenProfileSection-Methode aufrufen.

  2. Rufen Sie die CreateIProp-Funktion auf, um ein Eigenschaftsdatenobjekt abzurufen – ein Objekt, das die IPropData-Schnittstelle unterstützt.

  3. Rufen Sie die IMAPIProp::CopyTo-Methode des Profilabschnitts auf, um die Eigenschaften, die auf dem Eigenschaftenblatt angezeigt werden, aus dem Profilabschnitt in das Eigenschaftendatenobjekt zu kopieren.

  4. Rufen Sie die IMAPISupport::DoConfigPropSheet-Methode auf, um anzufordern, dass der Dienstanbieter ein Eigenschaftenblatt anzeigt, und übergeben Sie einen Zeiger auf das Eigenschaftendatenobjekt im Parameter lpConfigData.

  5. Wenn der Benutzer Änderungen an Konfigurationseigenschaften im Eigenschaftenblatt speichert, rufen Sie die IMAPIProp::CopyTo-Methode auf, um die Eigenschaften aus dem Eigenschaftendatenobjekt zurück in den Profilabschnitt zu kopieren.

Profilabschnitte unterstützen im Gegensatz zu anderen Objekten keine benannten Eigenschaften. Die Methoden IMAPIProp::GetIDsFromNames und IMAPIProp::GetNamesFromIDs geben MAPI_E_NO_SUPPORT zurück, wenn sie für ein Profilabschnittsobjekt aufgerufen werden. Wenn Sie die Methode IMAPIProp::SetProps verwenden, um Eigenschaftsbezeichner im Bereich oberhalb 0x8000 festzulegen, wird der PT_ERROR-Eigenschaftentyp zurückgegeben.

Profilabschnitte reservieren den Bezeichnerbereich 0x67F0 bis 0x67FF für sichere Eigenschaften. Dienstanbieter können diesen Bereich verwenden, um Kennwörter und andere anbieterspezifische Anmeldeinformationen zu speichern. Eigenschaften in diesem Bereich werden nicht in der vollständigen Liste der Eigenschaften zurückgegeben, wenn NULL im Parameter lpPropTag der Methode IMAPIPropProp::GetProps übergeben wird, noch werden sie im Parameter lppPropTagArray der Methode IMAPIProp::GetPropList zurückgegeben. Sichere Eigenschaften müssen speziell von ihren Bezeichnern angefordert werden.

MAPI erstellt einen Profilabschnitt mit der hartcodierten Konstante MUID_PROFILE_INSTANCE als Bezeichner und PR_SEARCH_KEY (PidTagSearchKey) als einzelne Eigenschaft. MAPI stellt sicher, dass der PR_SEARCH_KEY-Eigenschaftswert für alle erstellten Profile eindeutig ist. Verwenden Sie PR_SEARCH_KEY anstelle von PR_PROFILE_NAME, wenn Eindeutigkeit wichtig ist, da es möglich ist, dass auf ein gelöschtes Profil ein anderes Profil mit demselben Namen folgt.

Weitere Informationen zur Verwendung von Profilabschnitten finden Sie unter Verwalten von Profilen und Nachrichtendiensten.

Siehe auch

MAPI-Schnittstellen