SwitchDesktop 函式 (winuser.h)
讓指定的桌面可見並加以啟用。 這可讓桌面接收來自使用者的輸入。 呼叫進程必須DESKTOP_SWITCHDESKTOP桌面的存取權, SwitchDesktop 函式才能成功。
語法
BOOL SwitchDesktop(
[in] HDESK hDesktop
);
參數
[in] hDesktop
桌面的控制碼。 CreateDesktop和OpenDesktop函式會傳回此控制碼。
此桌面必須與進程的目前視窗月臺相關聯。
傳回值
如果函式成功,則傳回非零的值。
如果此函式失敗,則傳回值為零。 若要取得擴充的錯誤資訊,請呼叫 GetLastError。 不過, SwitchDesktop 只會設定下列情況的最後一個錯誤:
- 當桌面屬於不可見視窗月臺時
- 當 hDesktop 是不正確控制碼時,會參考已終結的桌面,或屬於與呼叫程式不同的會話
備註
如果桌面屬於不可見的視窗月臺, SwitchDesktop 函式就會失敗。 從與 WinLogon 和 ScreenSaver 桌面等安全桌面相關聯的進程呼叫SwitchDesktop時也會失敗。 與安全桌面相關聯的進程包括自訂 UserInit 進程。 這類呼叫通常會失敗,並出現「拒絕存取」錯誤。
規格需求
最低支援的用戶端 | Windows 2000 專業版 [僅限傳統型應用程式] |
最低支援的伺服器 | Windows 2000 Server [僅限傳統型應用程式] |
目標平台 | Windows |
標頭 | winuser.h (包括 Windows.h) |
程式庫 | User32.lib |
Dll | User32.dll |
API 集合 | ext-ms-win-ntuser-windowstation-l1-1-0 (在 Windows 8) |