Share via


Función SetThreadDesktop (winuser.h)

Asigna el escritorio especificado al subproceso que llama. Todas las operaciones posteriores en el escritorio usan los derechos de acceso concedidos al escritorio.

Sintaxis

BOOL SetThreadDesktop(
  [in] HDESK hDesktop
);

Parámetros

[in] hDesktop

Identificador del escritorio que se va a asignar al subproceso que realiza la llamada. Este identificador lo devuelve la función CreateDesktop, GetThreadDesktop, OpenDesktop o OpenInputDesktop .

Este escritorio debe estar asociado a la estación de ventana actual para el proceso.

Valor devuelto

Si la función se realiza correctamente, el valor devuelto es 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

Se producirá un error en la función SetThreadDesktop si el subproceso que realiza la llamada tiene ventanas o enlaces en su escritorio actual (a menos que el parámetro hDesktop sea un identificador para el escritorio actual).

Advertencia Existe un riesgo de seguridad significativo para cualquier servicio que abra una ventana en el escritorio interactivo. Al abrir una ventana de escritorio, un servicio se hace vulnerable a los ataques del usuario que ha iniciado sesión, cuya aplicación podría enviar mensajes malintencionados a la ventana de escritorio del servicio y afectar a su capacidad de funcionar.
 

Requisitos

Requisito Value
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 (incluir 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

CreateDesktop

Escritorios

GetThreadDesktop

OpenDesktop

SetProcessWindowStation

Funciones de escritorio y estación de ventanas