Compartir a través de


Función de devolución de llamada MAPILOGON (mapi.h)

[No se recomienda el uso de esta función. Puede modificarse o no estar disponible en versiones posteriores de Windows.

La función MAPILogon inicia una sesión simple de MAPI, cargando el almacén de mensajes predeterminado y los proveedores de libretas de direcciones.

Sintaxis

MAPILOGON Mapilogon;

ULONG Mapilogon(
  [in]           ULONG_PTR ulUIParam,
  [in, optional] LPSTR lpszProfileName,
  [in, optional] LPSTR lpszPassword,
  [in]           FLAGS flFlags,
                 ULONG ulReserved,
  [out]          LPLHANDLE lplhSession
)
{...}

Parámetros

[in] ulUIParam

Identificador de ventana principal o cero, que indica que si se muestra un cuadro de diálogo, es modal de la aplicación. Si el parámetro ulUIParam contiene un identificador de ventana principal, es de tipo HWND (convertido a un ULONG_PTR). Si no se muestra ningún cuadro de diálogo durante la llamada, se omite ulUIParam .

[in, optional] lpszProfileName

Puntero a una cadena de nombre de perfil terminada en null, limitada a 256 caracteres o menos. Este es el perfil que se va a usar al iniciar sesión. Si el parámetro lpszProfileName es NULL o apunta a una cadena vacía y el parámetro flFlags se establece en MAPI_LOGON_UI, MAPILogon muestra un cuadro de diálogo de inicio de sesión con un campo de nombre vacío.

[in, optional] lpszPassword

Puntero a una cadena de credencial terminada en null, limitada a 256 caracteres o menos. Si el sistema de mensajería no requiere credenciales de contraseña o si requiere que el usuario los escriba, el parámetro lpszPassword debe ser NULL o apuntar a una cadena vacía. Cuando el usuario debe escribir credenciales, el parámetro flFlags debe establecerse en MAPI_LOGON_UI para permitir que se muestre un cuadro de diálogo de inicio de sesión.

[in] flFlags

Máscara de bits de las marcas de opción. Se pueden establecer las marcas siguientes.

Valor Significado
MAPI_FORCE_DOWNLOAD
Se debe intentar descargar todos los mensajes del usuario antes de devolverlos. Si no se establece la marca MAPI_FORCE_DOWNLOAD, los mensajes se pueden descargar en segundo plano después de que se devuelva la llamada de función.
MAPI_NEW_SESSION
Se debe intentar crear una nueva sesión en lugar de adquirir la sesión compartida del entorno. Si no se establece la marca MAPI_NEW_SESSION, MAPILogon usa una sesión compartida existente.
MAPI_LOGON_UI
Se debe mostrar un cuadro de diálogo de inicio de sesión para solicitar al usuario información de inicio de sesión. Si el usuario debe proporcionar una contraseña y un nombre de perfil para habilitar un inicio de sesión correcto, se debe establecer MAPI_LOGON_UI.
MAPI_PASSWORD_UI
MAPILogon solo debe solicitar una contraseña y no permitir que el usuario cambie el nombre del perfil. No se deben establecer MAPI_PASSWORD_UI o MAPI_LOGON_UI, ya que la intención es seleccionar entre dos cuadros de diálogo diferentes para el inicio de sesión.

ulReserved

Reservados; debe ser cero.

[out] lplhSession

Identificador de sesión MAPI simple.

Valor devuelto

Esta función devuelve uno de los valores siguientes.

Código devuelto Descripción
MAPI_E_FAILURE
Se produjeron uno o varios errores no especificados durante el inicio de sesión. No se devolvió ningún identificador de sesión.
MAPI_E_INSUFFICIENT_MEMORY
No había memoria suficiente para continuar. No se devolvió ningún identificador de sesión.
MAPI_E_LOGIN_FAILURE
No había ningún inicio de sesión predeterminado y el usuario no pudo iniciar sesión correctamente cuando se mostraba el cuadro de diálogo de inicio de sesión. No se devolvió ningún identificador de sesión.
MAPI_E_TOO_MANY_SESSIONS
El usuario tenía demasiadas sesiones abiertas simultáneamente. No se devolvió ningún identificador de sesión.
MAPI_E_USER_ABORT
El usuario canceló el cuadro de diálogo de inicio de sesión. No se devolvió ningún identificador de sesión.
SUCCESS_SUCCESS
La llamada se realizó correctamente y se estableció una sesión mapI simple.

Comentarios

La función MAPILogon inicia una sesión con el sistema de mensajería y devuelve un identificador que se puede usar en llamadas MAPI posteriores para proporcionar explícitamente credenciales de usuario al sistema de mensajería. Para solicitar la presentación de un cuadro de diálogo de inicio de sesión si las credenciales presentadas no validan la sesión, establezca el parámetro flFlags en MAPI_LOGON_UI.

La aplicación cliente prueba una sesión existente llamando a MAPILogon con un valor NULL para el parámetro lpszProfileName , un valor NULL para el parámetro lpszPassword y no estableciendo la marca MAPI_LOGON_UI en flFlags. Si hay una sesión existente, la llamada se realiza correctamente y devuelve un LHANDLE válido para la sesión. De lo contrario, se produce un error en la llamada.

Requisitos

Requisito Value
Plataforma de destino Windows
Encabezado mapi.h

Consulte también

MAPILogoff

Simple MAPI