Функция GetThreadDesktop (winuser.h)
Извлекает дескриптор на рабочий стол, назначенный указанному потоку.
Синтаксис
HDESK GetThreadDesktop(
[in] DWORD dwThreadId
);
Параметры
[in] dwThreadId
Идентификатор потока. Функции GetCurrentThreadId и CreateProcess возвращают идентификаторы потоков.
Возвращаемое значение
Если функция выполняется успешно, возвращаемое значение будет дескриптором рабочего стола, связанного с указанным потоком. Чтобы закрыть возвращенный дескриптор, вызывать функцию CloseDesktop не нужно.
Если функция завершается сбоем, возвращается значение NULL. Дополнительные сведения об ошибке можно получить, вызвав GetLastError.
Комментарии
Система связывает рабочий стол с потоком при создании этого потока. Поток может использовать функцию SetThreadDesktop для изменения рабочего стола. Рабочий стол, связанный с потоком, должен находиться на оконной станции, связанной с процессом потока.
Вызывающий процесс может использовать возвращенный дескриптор в вызовах функций GetUserObjectInformation, GetUserObjectSecurity, SetUserObjectInformation и SetUserObjectSecurity .
Приложение службы создается со связанной оконной станцией и рабочим столом, поэтому нет необходимости вызывать функцию USER или GDI для подключения службы к оконной станции и рабочему столу.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows 2000 Professional [только классические приложения] |
Минимальная версия сервера | Windows 2000 Server [только классические приложения] |
Целевая платформа | Windows |
Header | winuser.h (включая Windows.h) |
Библиотека | User32.lib |
DLL | User32.dll |
Набор API | ext-ms-win-ntuser-windowstation-l1-1-0 (представлено в Windows 8) |