Función WlxActivateUserShell (winwlx.h)
[La función WlxActivateUserShell ya no está disponible para su uso a partir de Windows Server 2008 y Windows Vista.]
Activa el programa de shell de usuario.
La función WlxActivateUserShell debe implementarse mediante un archivo DLL de GINA de reemplazo. Winlogon llama a esta función después de un inicio de sesión correcto para solicitar que la GINA active el programa de shell del usuario.
Sintaxis
BOOL WlxActivateUserShell(
[in] PVOID pWlxContext,
[in] PWSTR pszDesktopName,
[in] PWSTR pszMprLogonScript,
[in] PVOID pEnvironment
);
Parámetros
[in] pWlxContext
Puntero al contexto de GINA asociado a esta estación de ventana. Este es el valor de contexto que devuelve GINA cuando Winlogon llama a WlxInitialize para esta estación.
[in] pszDesktopName
Puntero a una cadena de caracteres anchos terminada en NULL que especifica el nombre del escritorio donde se iniciará el shell. Pase esta cadena a la función CreateProcess o CreateProcessAsUser a través del miembro lpDesktop de la estructura STARTUPINFO.
[in] pszMprLogonScript
Puntero a una cadena de caracteres anchos terminada en NULL que especifica los nombres de script devueltos desde los archivos DLL del proveedor de red. Los archivos DLL del proveedor de red pueden devolver scripts que se ejecutarán durante el inicio de sesión; sin embargo, la GINA puede ignorarlas.
[in] pEnvironment
Especifica las variables de entorno iniciales para el proceso. Winlogon crea una copia del entorno y la entrega a la GINA. GINA puede modificar este entorno antes de usarlo para inicializar el shell del usuario. La GINA debe llamar a la función VirtualFree para liberar la memoria asignada para pEnvironment.
Valor devuelto
Si la función inicia correctamente un proceso de shell, la función devuelve TRUE.
Si se produce un error en la función, devuelve FALSE. Cuando se devuelve FALSE , Winlogon cancela el inicio de sesión en proceso.
Observaciones
Antes de llamar a WlxActivateUserShell, Winlogon establece el estado de escritorio para que el escritorio actual sea el escritorio de Winlogon y establezca el estado de la estación de trabajo para que el escritorio esté bloqueado.
Active siempre el programa de shell de usuario en WlxActivateUserShell en lugar de WlxLoggedOutSAS. Esto ofrece a Winlogon la oportunidad de actualizar su estado, incluida la configuración de la estación de trabajo y las protecciones de escritorio, antes de que los procesos de usuario que haya iniciado sesión puedan ejecutarse.
Requisitos
Cliente mínimo compatible | Windows XP [solo aplicaciones de escritorio] |
Servidor mínimo compatible | Windows Server 2003 [solo aplicaciones de escritorio] |
Plataforma de destino | Windows |
Encabezado | winwlx.h |