Compartir a través de


IMAPISession::SetDefaultStore

Hace referencia a: Outlook 2013 | Outlook 2016

Establece un almacén de mensajes como almacén de mensajes predeterminado para la sesión.

HRESULT SetDefaultStore(
  ULONG ulFlags,
  ULONG cbEntryID,
  LPENTRYID lpEntryID
);

Parameters

ulFlags

[in] Máscara de bits de marcas que controla la configuración del almacén de mensajes predeterminado. Estas marcas son mutuamente excluyentes; solo se puede establecer una de las siguientes marcas:

MAPI_DEFAULT_STORE

Establece el almacén de mensajes como el valor predeterminado de la sesión. Novedades la fila de tabla de estado del almacén de mensajes estableciendo la marca STATUS_DEFAULT_STORE en la columna PR_RESOURCE_FLAGS (PidTagResourceFlags).

MAPI_PRIMARY_STORE

Establece el almacén de mensajes como el almacén que se va a usar en el inicio de sesión. Si el almacén de mensajes no es el almacén predeterminado, los clientes deben convertirlo en el predeterminado. Novedades la fila de la tabla de estado del almacén de mensajes estableciendo la marca STATUS_PRIMARY_STORE en la columna PR_RESOURCE_FLAGS.

MAPI_SECONDARY_STORE

Establece el almacén de mensajes como el almacén que se usará en el inicio de sesión si el almacén de mensajes principal no está disponible. Si un cliente no puede abrir el almacén principal, debe abrir el almacén secundario y establecerlo como predeterminado. Novedades la fila de tabla de estado del almacén de mensajes estableciendo la marca STATUS_SECONDARY_STORE en la columna PR_RESOURCE_FLAGS.

MAPI_SIMPLE_STORE_PERMANENT

Establece la marca de STATUS_SIMPLE_STORE en la propiedad PR_RESOURCE_FLAGS del almacén de mensajes en su fila de tabla de estado, en la fila de tabla del almacén de mensajes y en el perfil de sesión.

MAPI_SIMPLE_STORE_TEMPORARY

Establece la marca de STATUS_SIMPLE_STORE en la propiedad PR_RESOURCE_FLAGS del almacén de mensajes en su fila de tabla de estado y en la fila de tabla del almacén de mensajes. El perfil no se modifica.

cbEntryID

[in] Recuento de bytes en el identificador de entrada al que apunta el parámetro lpEntryID .

lpEntryID

[in] Puntero al identificador de entrada del almacén de mensajes que está pensado como predeterminado. Si un cliente pasa NULL en lpEntryID, no se selecciona ningún almacén de mensajes como valor predeterminado.

Valor devuelto

S_OK

La llamada se realizó correctamente y devolvió el valor o los valores esperados.

Comentarios

El método IMAPISession::SetDefaultStore establece un almacén de mensajes como uno de los siguientes:

  • Almacén de mensajes predeterminado para la sesión.

  • Almacén de mensajes principal para la sesión.

  • Almacén de mensajes secundario para la sesión.

Para establecer un almacén de mensajes como predeterminado, el almacén de mensajes debe tener las siguientes marcas establecidas en su propiedad PR_STORE_SUPPORT_MASK (PidTagStoreSupportMask):

  • STORE_SUBMIT_OK

  • STORE_CREATE_OK

  • STORE_MODIFY_OK

Notas para los llamadores

Puede determinar el almacén de mensajes predeterminado para la sesión recuperando la tabla de estado y buscando la configuración de la marca de STATUS_DEFAULT_STORE en la columna PR_RESOURCE_FLAGS . La fila que tiene esta configuración representa el almacén de mensajes que se designa como el valor predeterminado de la sesión.

Cuando se establece el MAPI_DEFAULT_STORE o la marca de MAPI_SIMPLE_STORE_PERMANENT, MAPI actualiza el perfil, la tabla del almacén de mensajes y la tabla de estado.

Cada vez que se realiza un cambio en la configuración predeterminada del almacén de mensajes, se generan las siguientes notificaciones:

  • Se emite una notificación de evento fnevTableModified para cada fila afectada tanto en el almacén de mensajes como en la tabla de estado.

  • Se emite una notificación interna a la cola MAPI. Las operaciones que ya están en curso se completan sin cambios; Las nuevas operaciones que implican el almacén de mensajes predeterminado, como la descarga de mensajes, se procesan para el nuevo almacén predeterminado.

Referencia de MFCMAPI

Para obtener un ejemplo de código de MFCMAPI, vea la siguiente tabla.

Archivo Función Comment
MainDlg.cpp
CMainDlg::OnSetDefaultStore
MFCMAPI usa el método IMAPISession::SetDefaultStore para establecer el almacén seleccionado como almacén predeterminado.

Vea también

Propiedad canónica PidTagResourceFlags

Propiedad canónica PidTagStoreSupportMask

TABLE_NOTIFICATION

IMAPISession: IUnknown

MFCMAPI como un ejemplo de c�digo