Función WTSQuerySessionInformationA (wtsapi32.h)
Recupera información de sesión para la sesión especificada en el servidor de host de sesión de Escritorio remoto (host de sesión de Escritorio remoto) especificado. Se puede usar para consultar información de sesión en servidores host de sesión de Escritorio remoto y local.
Sintaxis
BOOL WTSQuerySessionInformationA(
[in] HANDLE hServer,
[in] DWORD SessionId,
[in] WTS_INFO_CLASS WTSInfoClass,
[out] LPSTR *ppBuffer,
[out] DWORD *pBytesReturned
);
Parámetros
[in] hServer
Identificador de un servidor host de sesión de Escritorio remoto. Especifique un identificador abierto por la función WTSOpenServer o especifique WTS_CURRENT_SERVER_HANDLE para indicar el servidor host de sesión de Escritorio remoto en el que se ejecuta la aplicación.
[in] SessionId
Identificador de sesión de Servicios de Escritorio remoto. Para indicar la sesión en la que se ejecuta la aplicación que realiza la llamada (o la sesión actual), especifique WTS_CURRENT_SESSION. Especifique solo WTS_CURRENT_SESSION al obtener información de sesión en el servidor local. Si WTS_CURRENT_SESSION se especifica al consultar información de sesión en un servidor remoto, la información de sesión devuelta será incoherente. No use los datos devueltos.
Puede usar la función WTSEnumerateSessions para recuperar los identificadores de todas las sesiones en un servidor host de sesión de Escritorio remoto especificado.
Para consultar la información de la sesión de otro usuario, debe tener el permiso Información de consulta. Para obtener más información, vea Permisos de Servicios de Escritorio remoto. Para modificar permisos en una sesión, use la herramienta administrativa Configuración de Servicios de Escritorio remoto.
[in] WTSInfoClass
Valor de la enumeración WTS_INFO_CLASS que indica el tipo de información de sesión que se va a recuperar en una llamada a la función WTSQuerySessionInformation .
[out] ppBuffer
Puntero a una variable que recibe un puntero a la información solicitada. El formato y el contenido de los datos dependen de la clase de información especificada en el parámetro WTSInfoClass . Para liberar el búfer devuelto, llame a la función WTSFreeMemory .
[out] pBytesReturned
Puntero a una variable que recibe el tamaño, en bytes, de los datos devueltos en ppBuffer.
Valor devuelto
Si la función se ejecuta correctamente, el valor devuelto es un valor distinto de cero.
Si la función no se realiza correctamente, el valor devuelto es cero. Para obtener información de error extendida, llame a GetLastError.
Comentarios
Para recuperar el identificador de sesión de la sesión actual cuando se ejecuta Servicios de Escritorio remoto, llame a WTSQuerySessionInformation y especifique WTS_CURRENT_SESSION para el parámetro SessionId y WTSSessionId para el parámetro WTSInfoClass . El identificador de sesión se devolverá en el parámetro ppBuffer . Si los Servicios de Escritorio remoto no se están ejecutando, se producirá un error en las llamadas a WTSQuerySessionInformation . En esta situación, puede recuperar el identificador de sesión actual llamando a la función ProcessIdToSessionId .
Para determinar si la aplicación se ejecuta en la consola física, debe especificar WTS_CURRENT_SESSION para el parámetro SessionId y WTSClientProtocolType como parámetro WTSInfoClass . Si ppBuffer es "0", la sesión se adjunta a la consola física.
Nota
El encabezado wtsapi32.h define WTSQuerySessionInformation 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 neutral de codificación con código que no es neutral de codificación puede dar lugar a errores de coincidencia que dan lugar a errores de compilación o tiempo de ejecución. Para obtener más información, vea Convenciones para prototipos de función.
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible | Windows Vista |
Servidor mínimo compatible | Windows Server 2008 |
Plataforma de destino | Windows |
Encabezado | wtsapi32.h |
Library | Wtsapi32.lib |
Archivo DLL | Wtsapi32.dll |
Conjunto de API | ext-ms-win-session-wtsapi32-l1-1-0 (introducido en Windows 8) |