NetGroupGetUsers 函式 (lmaccess.h)
NetGroupGetUsers函式會擷取安全性資料庫中特定全域群組的成員清單,也就是安全性帳戶管理員 (SAM) 資料庫,或網域控制站為 Active Directory。
語法
NET_API_STATUS NET_API_FUNCTION NetGroupGetUsers(
[in] LPCWSTR servername,
[in] LPCWSTR groupname,
[in] DWORD level,
[out] LPBYTE *bufptr,
[in] DWORD prefmaxlen,
[out] LPDWORD entriesread,
[out] LPDWORD totalentries,
[in, out] PDWORD_PTR ResumeHandle
);
參數
[in] servername
常數位符串的指標,指定要執行函式之遠端伺服器的 DNS 或 NetBIOS 名稱。 如果此參數為 Null,則會使用本機電腦。
[in] groupname
常數位符串的指標,指定要列出其成員的通用群組名。 如需詳細資訊,請參閱接下來的<備註>一節。
[in] level
要求之資料的資訊層級。 此參數可以是下列其中一個值。
值 | 意義 |
---|---|
|
傳回全域群組的成員名稱。 bufptr參數指向GROUP_USERS_INFO_0結構的陣列。 |
|
傳回全域群組的成員名稱和屬性。 bufptr參數指向GROUP_USERS_INFO_1結構的陣列。 |
[out] bufptr
接收資訊結構的緩衝區位址指標。 系統會配置此緩衝區的記憶體。 您必須呼叫 NetApiBufferFree 函式來解除配置記憶體。 請注意,即使函式因ERROR_MORE_DATA而失敗,您也必須釋放緩衝區。
[in] prefmaxlen
所傳回資料的慣用最大長度,以位元組為單位。 如果您指定MAX_PREFERRED_LENGTH,函式會配置保存資料所需的記憶體數量。 如果您在此參數中指定另一個值,它可以限制函式傳回的位元組數目。 如果緩衝區大小不足以保存所有專案,函式會傳回ERROR_MORE_DATA。 如需詳細資訊,請參閱 網路管理功能緩衝區 和 網路管理功能緩衝區長度。
[out] entriesread
值指標,可接收實際列舉的專案計數。
[out] totalentries
值的指標,這個值會接收可能已從目前繼續位置列舉的專案總數。
[in, out] ResumeHandle
變數的指標,其中包含用來繼續現有使用者列舉的繼續控制碼。 第一次呼叫時,控制碼應該是零,後續呼叫則保持不變。 如果 ResumeHandle 參數為 Null,則不會儲存任何繼續控制碼。
傳回值
如果函式成功,傳回值會NERR_Success。
如果函式失敗,傳回值可以是下列其中一個錯誤碼。
傳回碼 | 描述 |
---|---|
|
使用者無法存取要求的資訊。 |
|
系統呼叫層級不正確。 如果 層級 參數指定為 0 或 1 以外的值,就會傳回此錯誤。 |
|
有更多專案可供使用。 指定足夠的緩衝區來接收所有專案。 |
|
記憶體不足,無法完成作業。 |
|
電腦名稱無效。 |
|
找不到 bufptr 參數所指向結構中的通用群組名。 |
|
發生內部錯誤。 |
備註
如果您在執行 Active Directory 的網域控制站上呼叫此函式,則會根據 安全性實體物件的存取控制清單 (ACL) ,允許或拒絕存取。 預設 ACL 允許所有已驗證的使用者和「Windows 2000 相容存取」群組的成員檢視資訊。 如果您在成員伺服器或工作站上呼叫此函式,所有已驗證的使用者都可以檢視資訊。 如需有關匿名存取和限制這些平臺上匿名存取的資訊,請參閱 網路管理功能的安全性需求。 如需 ACL、ACE 和存取權杖的詳細資訊,請參閱存取控制模型。
Group 物件的安全性描述元是用來執行此函式的存取檢查。
若要授與現有全域群組中的一個使用者成員資格,您可以呼叫 NetGroupAddUser 函式。 若要從全域群組中移除使用者,請呼叫 NetGroupDelUser 函式。 如需取代全域群組成員資格的相關資訊,請參閱 NetGroupSetUsers。
使用者帳戶名稱限制為 20 個字元,且組名限制為 256 個字元。 此外,帳戶名稱不能以句號終止,而且不能包含逗號或任何下列可列印字元:「、/、、、[、]、:、| <> 、?、*。 名稱也無法在範圍 1-31 中包含不可列印的字元。
如果您是針對 Active Directory 進行程式設計,您可以呼叫特定 Active Directory 服務介面 (ADSI) 方法來達成相同的功能,方法是呼叫網路管理功能。 如需詳細資訊,請參閱 IADsGroup。
需求
最低支援的用戶端 | Windows 2000 專業版 [僅限傳統型應用程式] |
最低支援的伺服器 | Windows 2000 Server [僅限傳統型應用程式] |
目標平台 | Windows |
標頭 | lmaccess.h (包括 Lm.h) |
程式庫 | Netapi32.lib |
Dll | Netapi32.dll |