Función CreateWindowStationA (winuser.h)

Crea un objeto de estación de ventana, lo asocia al proceso de llamada y lo asigna a la sesión actual.

Sintaxis

HWINSTA CreateWindowStationA(
  [in, optional] LPCSTR                lpwinsta,
                 DWORD                 dwFlags,
  [in]           ACCESS_MASK           dwDesiredAccess,
  [in, optional] LPSECURITY_ATTRIBUTES lpsa
);

Parámetros

[in, optional] lpwinsta

Nombre de la estación de ventana que se va a crear. Los nombres de estación de ventana no distinguen mayúsculas de minúsculas y no pueden contener caracteres de barra diagonal inversa (\). Solo los miembros del grupo Administradores pueden especificar un nombre. Si lpwinsta es NULL o una cadena vacía, el sistema forma un nombre de estación de ventana con el identificador de sesión de inicio de sesión para el proceso de llamada. Para obtener este nombre, llame a la función GetUserObjectInformation .

dwFlags

Si este parámetro es CWF_CREATE_ONLY y la estación de ventanas ya existe, se produce un error en la llamada. Si no se especifica esta marca y la estación de ventanas ya existe, la función se realiza correctamente y devuelve un nuevo identificador a la estación de ventana existente.

Windows XP/2000: Este parámetro está reservado y debe ser cero.

[in] dwDesiredAccess

El tipo de acceso que tiene el identificador devuelto tiene a la estación de ventanas. Además, puede especificar cualquiera de los derechos de acceso estándar, como READ_CONTROL o WRITE_DAC, y una combinación de los derechos de acceso específicos de la estación de ventana. Para obtener más información, vea Derechos de acceso y seguridad de la estación de ventanas.

[in, optional] lpsa

Puntero a una estructura de SECURITY_ATTRIBUTES que determina si los procesos secundarios pueden heredar el identificador devuelto. Si lpsa es NULL, no se puede heredar el identificador.

El miembro lpSecurityDescriptor de la estructura especifica un descriptor de seguridad para la nueva estación de ventanas. Si lpsa es NULL, la estación de ventana (y los escritorios creados dentro de la ventana) obtiene un descriptor de seguridad que concede GENERIC_ALL acceso a todos los usuarios.

Valor devuelto

Si la función se ejecuta correctamente, el valor devuelto es un identificador de la estación de ventana recién creada. Si la estación de ventana especificada ya existe, la función se realiza correctamente y devuelve un identificador a la estación de ventana existente.

Si la función no se realiza correctamente, el valor devuelto es NULL. Para obtener información de error extendida, llame a GetLastError.

Comentarios

Una vez que haya terminado con el identificador, debe llamar a CloseWindowStation para liberar el identificador.

Nota

El encabezado winuser.h define CreateWindowStation como alias que selecciona automáticamente la versión ANSI o Unicode de esta función en función de la definición de la constante de preprocesador UNICODE. La combinación del uso del alias neutro de codificación con código que no es neutral de codificación puede provocar discrepancias que dan lugar a errores de compilación o en tiempo de ejecución. Para obtener más información, vea Convenciones para prototipos de función.

Requisitos

   
Cliente mínimo compatible Windows 2000 Professional [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows 2000 Server [solo aplicaciones de escritorio]
Plataforma de destino Windows
Encabezado winuser.h (incluya Windows.h)
Library User32.lib
Archivo DLL User32.dll
Conjunto de API ext-ms-win-ntuser-windowstation-l1-1-0 (introducido en Windows 8)

Consulte también

CloseWindowStation

GetUserObjectInformation

OpenWindowStation

Funciones de escritorio y estación de ventanas

Estaciones de ventana