getUserObjectInformationW 函式 (winuser.h)
擷取指定視窗月臺或桌面物件的相關資訊。
語法
BOOL GetUserObjectInformationW(
[in] HANDLE hObj,
[in] int nIndex,
[out, optional] PVOID pvInfo,
[in] DWORD nLength,
[out, optional] LPDWORD lpnLengthNeeded
);
參數
[in] hObj
視窗月臺或桌面物件的控制碼。 這個控制碼是由 CreateWindowStation、 OpenWindowStation、 CreateDesktop或 OpenDesktop 函式傳回。
[in] nIndex
要擷取的資訊。 參數可以是下列其中一個值。
值 | 意義 |
---|---|
|
控制碼旗標。 pvInfo參數必須指向USEROBJECTFLAGS結構。 |
|
桌面堆積的大小,以 KB 為單位,以 ULONG 值表示。 hObj參數必須是桌面物件的控制碼,否則函式會失敗。
Windows Server 2003 和 Windows XP/2000: 不支援這個值。 |
|
如果hObj參數是接收使用者輸入之桌面物件的控制碼,則為TRUE。 否則為 FALSE 。
Windows Server 2003 和 Windows XP/2000: 不支援這個值。 |
|
物件的名稱,做為字串。 |
|
物件的型別名稱,做為字串。 |
|
SID結構,識別目前與指定物件相關聯的使用者。 如果沒有使用者與物件相關聯, lpnLengthNeeded 所指向緩衝區中傳回的值會是零。 請注意 ,SID 是可變長度結構。 您通常會呼叫 GetUserObjectInformation 來判斷 SID 的長度,然後再擷取其值。 |
[out, optional] pvInfo
要接收物件資訊的緩衝區指標。
[in] nLength
pvInfo參數所指向的緩衝區大小,以位元組為單位。
[out, optional] lpnLengthNeeded
變數的指標,接收儲存所要求資訊所需的位元組數目。 如果此變數的值大於函式傳回時 nLength 參數的值,則函式會傳回 FALSE,而且不會將任何資訊複製到 pvInfo 緩衝區。 如果 lpnLengthNeeded 所指向的變數值小於或等於 nLength的值,則會複製整個資訊區塊。
傳回值
如果函式成功,則傳回非零的值。
如果此函式失敗,則傳回值為零。 若要取得擴充的錯誤資訊,請呼叫 GetLastError。
備註
注意
winuser.h 標頭會根據 UNICODE 預處理器常數的定義,將 GetUserObjectInformation 定義為別名,自動選取此函式的 ANSI 或 Unicode 版本。 混合使用編碼中性別名與非編碼中性的程式碼,可能會導致編譯或執行時間錯誤不符。 如需詳細資訊,請參閱 函式原型的慣例。
規格需求
最低支援的用戶端 | Windows 2000 Professional [僅限傳統型應用程式] |
最低支援的伺服器 | Windows 2000 Server [僅限桌面應用程式] |
目標平台 | Windows |
標頭 | winuser.h (包含 Windows.h) |
程式庫 | User32.lib |
Dll | User32.dll |
API 集合 | ext-ms-win-ntuser-windowstation-ansi-l1-1-0 (Windows 10 10.0.10240 版) |