OpenDesktopA 函式 (winuser.h)
開啟指定的桌面物件。
語法
HDESK OpenDesktopA(
[in] LPCSTR lpszDesktop,
[in] DWORD dwFlags,
[in] BOOL fInherit,
[in] ACCESS_MASK dwDesiredAccess
);
參數
[in] lpszDesktop
要開啟之桌面的名稱。 桌面名稱不區分大小寫。
這個桌面必須屬於目前的視窗月臺。
[in] dwFlags
此參數可以是零或下列值。
價值 | 意義 |
---|---|
|
允許在桌面上的其他帳戶中執行的進程,在此程式中設定勾點。 |
[in] fInherit
如果此值 TRUE,則此進程所建立的進程將會繼承句柄。 否則,進程不會繼承此句柄。
[in] dwDesiredAccess
桌面的存取權。 如需存取權限清單,請參閱 Desktop Security and Access Rights。
傳回值
如果函式成功,傳回值就是開啟桌面的句柄。 當您完成使用句柄時,請呼叫 CloseDesktop 函式來關閉它。
如果函式失敗,則傳回值 NULL。 若要取得擴充的錯誤資訊,請呼叫 GetLastError。
言論
呼叫進程必須有相關聯的視窗月臺,由系統在進程建立期間指派,或由 SetProcessWindowStation 函式所設定。
如果 dwDesiredAccess 參數指定 READ_CONTROL、WRITE_DAC或 WRITE_OWNER 標準訪問許可權,您也必須要求 DESKTOP_READOBJECTS 和 DESKTOP_WRITEOBJECTS 訪問許可權。
注意
winuser.h 標頭會將 OpenDesktop 定義為別名,根據 UNICODE 預處理器常數的定義,自動選取此函式的 ANSI 或 Unicode 版本。 混合使用編碼中性別名與非編碼中性的程序代碼,可能會導致編譯或運行時間錯誤不符。 如需詳細資訊,請參閱函式原型的
要求
要求 | 價值 |
---|---|
最低支援的用戶端 | Windows 2000 Professional [僅限傳統型應用程式] |
支援的最低伺服器 | Windows 2000 Server [僅限傳統型應用程式] |
目標平臺 | 窗戶 |
標頭 | winuser.h (包括 Windows.h) |
連結庫 | User32.lib |
DLL | User32.dll |
API 集 | ext-ms-win-ntuser-windowstation-ansi-l1-1-1 (在 Windows 10 版本 10.0.14393 中引進) |