Compartir a través de


IProfSect : IMAPIProp

Hace referencia a: Outlook 2013 | Outlook 2016

Funciona con las propiedades de los objetos de sección de perfil.

Propiedad Valor
Archivo de encabezado:
Mapix.h
Expuesto por:
Objetos de sección de perfil
Implementado por:
MAPI
Llamado por:
Aplicaciones cliente y proveedores de servicios
Identificador de interfaz:
IID_IProfSect
Tipo de puntero:
LPPROFSECT
Modelo de transacción:
Notransacted

Orden de tabla virtual

Esta interfaz no tiene ningún método único.

Propiedades requeridas Access
PR_OBJECT_TYPE (PidTagObjectType)
Solo lectura
PR_PROFILE_NAME (PidTagProfileName)
Solo lectura

Notas para los llamadores

La interfaz IProfSect no tiene métodos únicos propios, pero puede llamar a los métodos IMAPIProp de la sección de perfil. Hay algunas diferencias entre la implementación de IProfSect y otras implementaciones de IMAPIProp:

  • IProfSect no admite un modelo de transacción.

  • IProfSect no admite propiedades con nombre.

  • IProfSect reserva el intervalo de identificadores 0x67F0 para 0x67ff para propiedades seguras.

No admitir un modelo de transacción significa que todos los cambios realizados en una sección de perfil después de las llamadas a los métodos IMAPIProp::CopyProps e IMAPIProp::CopyTo se producen inmediatamente. Las llamadas al método IMAPIProp::SaveChanges se realizan correctamente, pero en realidad no guardan ningún cambio.

Para protegerse frente a cambios que se producen prematuramente, los proveedores de servicios deben realizar copias de las secciones de perfil que se muestran a los usuarios a través de hojas de propiedades. Las hojas de propiedades deben funcionar con la copia, en lugar de con la sección de perfil real. Cuando el usuario hace clic en el botón Aceptar para comprobar que los cambios son precisos, los cambios se pueden guardar en la sección de perfil real.

Para implementar una hoja de propiedades mediante una sección de perfil copiada, use el procedimiento siguiente:

  1. Abra la sección de perfil llamando al método IMAPISupport::OpenProfileSection o IProviderAdmin::OpenProfileSection .

  2. Llame a la función CreateIProp para recuperar un objeto de datos de propiedad, un objeto que admite la interfaz IPropData .

  3. Llame al método IMAPIProp::CopyTo de la sección de perfil para copiar las propiedades que aparecerán en la hoja de propiedades de la sección de perfil al objeto de datos de propiedad.

  4. Llame al método IMAPISupport::D oConfigPropSheet para solicitar que el proveedor de servicios muestre una hoja de propiedades y pase un puntero al objeto de datos de propiedad en el parámetro lpConfigData .

  5. Cuando el usuario guarda los cambios en las propiedades de configuración de la hoja de propiedades, llame al método IMAPIProp::CopyTo para copiar las propiedades del objeto de datos de propiedad en la sección de perfil.

Las secciones de perfil, a diferencia de otros objetos, no admiten propiedades con nombre. Los métodos IMAPIProp::GetIDsFromNames e IMAPIProp::GetNamesFromIDs devuelven MAPI_E_NO_SUPPORT si se les llama en un objeto de sección de perfil. Si usa el método IMAPIProp::SetProps para establecer identificadores de propiedad en el intervalo anterior 0x8000, se devolverá el tipo de propiedad PT_ERROR.

Las secciones de perfil reservan el intervalo de identificadores 0x67F0 para 0x67FF para las propiedades seguras. Los proveedores de servicios pueden usar este intervalo para almacenar contraseñas y otras credenciales específicas del proveedor. Las propiedades de este intervalo no se devuelven en la lista completa de propiedades cuando se pasa NULL en el parámetro lpPropTag del método IMAPIProp::GetProps , ni se devuelven en el parámetro lppPropTagArray del método IMAPIProp::GetPropList . Las propiedades seguras deben ser solicitadas específicamente por sus identificadores.

MAPI proporciona una sección de perfil con la constante codificada de forma rígida MUID_PROFILE_INSTANCE como identificador y PR_SEARCH_KEY (PidTagSearchKey) como su propiedad única. MAPI garantiza que el valor de la propiedad PR_SEARCH_KEY será único entre todos los perfiles creados. Use PR_SEARCH_KEY en lugar de PR_PROFILE_NAME cuando la unicidad es importante, ya que es posible que un perfil eliminado esté seguido de otro perfil con el mismo nombre.

Para obtener más información sobre cómo usar secciones de perfil, consulte Administración de perfiles y servicios de mensajes.

Vea también

Interfaces MAPI