ISecurityInformation2::LookupSids 方法 (aclui.h)
LookupSids 方法返回与指定 SID 列表中每个元素对应的公用名称。
语法
HRESULT LookupSids(
[in] ULONG cSids,
[in] PSID *rgpSids,
[out] LPDATAOBJECT *ppdo
);
参数
[in] cSids
指向 rgpSids 指向的 SID 结构的指针数。
[in] rgpSids
指向 指向 SID 结构的指针数组的指针。
[out] ppdo
指向返回的数据传输对象的指针的指针,该对象包含 SID 的公用名称。 (可选)此参数还会返回 rgpSids 参数中 SID (UPN) 的用户主体名称。 数据传输对象是 一个SID_INFO 结构。
返回值
如果成功,则返回S_OK。
如果发生错误,则返回非零错误代码。
注解
如果访问控制编辑器要确定与指定 SID 对应的公用名称, 则 LookupSids 的实现可以返回E_NOTIMPL。 但是,如果访问控制编辑器收到除S_OK以外的任何返回代码,编辑器将确定此信息。
客户端必须使用以下格式通过数据对象返回公用名称。
#include <windows.h>
// HGLOBAL containing SID_INFO_LIST returned by
// ISecurityInformation2::LookupSids
#define CFSTR_ACLUI_SID_INFO_LIST TEXT("CFSTR_ACLUI_SID_INFO_LIST")
// Data structures corresponding to CFSTR_ACLUI_SID_INFO_LIST
typedef struct _SID_INFO
{
PSID pSid;
PWSTR pwzCommonName;
PWSTR pwzClass; // Used for selecting icon, for example,
// "User" or "Group"
PWSTR pwzUPN; // Optional pointer to a user principal
// name
} SID_INFO, *PSID_INFO;
typedef struct _SID_INFO_LIST
{
ULONG cItems;
SID_INFO aSidInfo[ANYSIZE_ARRAY];
} SID_INFO_LIST, *PSID_INFO_LIST;
要求
要求 | 值 |
---|---|
最低受支持的客户端 | Windows XP [仅限桌面应用] |
最低受支持的服务器 | Windows Server 2003 [仅限桌面应用] |
目标平台 | Windows |
标头 | aclui.h |