Share via


setThreadDesktop 函式 (winuser.h)

將指定的桌面指派給呼叫線程。 桌面上的所有後續作業都會使用授與桌面的訪問許可權。

語法

BOOL SetThreadDesktop(
  [in] HDESK hDesktop
);

參數

[in] hDesktop

要指派給呼叫線程之桌面的句柄。 這個句柄是由 CreateDesktopGetThreadDesktopOpenDesktopOpenInputDesktop 函式傳回。

此桌面必須與進程的目前視窗月台相關聯。

傳回值

如果函式成功,則傳回非零的值。

如果此函式失敗,則傳回值為零。 若要取得擴充的錯誤資訊,請呼叫 GetLastError

備註

除非 hDesktop 參數是目前桌面) 的句柄,否則如果呼叫線程在其目前桌面上有任何視窗或勾點 (,SetThreadDesktop 函式將會失敗。

警告 任何在互動式桌面上開啟窗口的服務都有顯著的安全性風險。 藉由開啟桌面視窗,服務本身很容易遭受登入用戶的攻擊,其應用程式可能會將惡意訊息傳送至服務的桌面視窗,並影響其運作能力。
 

規格需求

需求
最低支援的用戶端 Windows 2000 Professional [僅限傳統型應用程式]
最低支援的伺服器 Windows 2000 Server [僅限桌面應用程式]
目標平台 Windows
標頭 winuser.h (包含 Windows.h)
程式庫 User32.lib
Dll User32.dll
API 集合 ext-ms-win-ntuser-windowstation-l1-1-0 (於 Windows 8)

另請參閱

CreateDesktop

Desktops

GetThreadDesktop

OpenDesktop

SetProcessWindowStation

視窗月臺和桌面函式