OpenInputDesktop

OpenInputDesktop,是獲得當前用戶桌面句柄的函式。

輸入桌面,語法,參數,返回值,說明,要求,參閱,

輸入桌面

註:每個桌面(desktop)都為一個對象,所謂輸入桌面(input Desktop),典型例子就是即當前用戶的桌面。

語法

HDESK WINAPI OpenInputDesktop( _In_DWORD dwFlags, _In_BOOL fInherit, _In_ACCESS_MASK dwDesiredAccess);

參數

  • dwFlags[輸入]
  • 此參數可為0或者以下參數。
ValueMeaning
DF_ALLOWOTHERACCOUNTHOOK
允許其他賬戶上運行在當前桌面的進程可以HOOK當前進程。
(Allows processes running in other accounts on the desktop to set hooks in this process.)
  • fInherit[in]
    如果這個值為TRUE,當前進程創建的子進程將會繼承此句柄。否則子進程不會繼承此句柄。
  • dwDesiredAccess[in]
    對桌面的訪問許可權。對於訪問許可權的具體列表,請訪問MSDNDesktop Security and Access Rights.

返回值

如果函式成功執行,返回值為當前桌面句柄。當你不需要使用這個句柄,調用CloseDesktop函式關閉這個桌面句柄。
如果函式執行失敗,返回值為NULL。想獲得具體錯誤信息,調用GetLastError

說明

調用進程必須已有一個與之對應的窗體站(window station),或者當進程創建是被分配了一個,或者通過SetProcessWindowStation函式設定好。另外,此視窗站必須能夠接收輸入。
如果調用進程運行在一個未連線的會話中,此返回函式桌面句柄、只有當用戶重新連線會話後才會激活的。
程式可以調用SwitchDesktop函式去修改輸入桌面。
如果指定dwDesiredAccess參數的許可權為READ_CONTROL,WRITE_DAC, 或者WRITE_OWNER,你必須還得添加DESKTOP_READOBJECTSDESKTOP_WRITEOBJECTS許可權。

要求

Minimum supported client
Windows2000 Professional [desktop apps only]
Minimum supported server
Windows2000 Server [desktop apps only]
頭檔案
Winuser.h (include Windows.h)
庫檔案
User32.lib
DLL
User32.dll

參閱

  • Desktops
  • SetProcessWindowStation
  • SwitchDesktop
  • Window Station and Desktop Functions

相關詞條

熱門詞條

聯絡我們