C/C++ 获取AD域 中指定 组名中的用户!

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C/C++ 获取AD域 中指定 组名中的用户!相关的知识,希望对你有一定的参考价值。

LPWSTR pszSearchFilter = L"(&(objectClass=group))";
LPWSTR pszAttr[] = L"sAMAccountName";
ADS_SEARCH_HANDLE hSearch;
LPOLESTR pszColumn = NULL;
int iCount = 0;
DWORD x = 0;
DWORD dwCount= sizeof(pszAttr)/sizeof(LPWSTR);
hr = pSearch->ExecuteSearch(
pszSearchFilter,
pszAttr,
dwCount,
&hSearch
);

ADS_SEARCH_COLUMN col;
*count = 0;
if ( SUCCEEDED(hr) )

hr = pSearch->GetFirstRow(hSearch);
if (SUCCEEDED(hr))

while( hr != S_ADS_NOMORE_ROWS )

iCount++;
while( pSearch->GetNextColumnName( hSearch, &pszColumn ) != S_ADS_NOMORE_COLUMNS )

hr = pSearch->GetColumn( hSearch, pszColumn, &col );
if ( SUCCEEDED(hr) )

for (x = 0; x< col.dwNumValues; x++)

namebuf[*count] = new wchar_t[256];
wcscpy(namebuf[*count],col.pADsValues[x].CaseIgnoreString);
(*count)++;
//获取到用户组,如何获取组中用户


pSearch->FreeColumn( &col );

参考技术A 建议参考下这个:
m s d n . m i c r o s o f t . c o m /en-us/library/aa772170(v=vs.85).aspx
m s d n . m i c r o s o f t . c o m /en-us/library/aa705905(v=vs.85).aspx

w w w . c o d e p r o j e c t . c o m /Articles/6778/How-to-get-User-Data-from-the-Active-Directory

C语言如何获取结构体中指定元素的大小?sizeof ( (X*)0 ) -> Y)

获取结构体的大小,这好办,这样就可以了:

#include <stdio.h>

struct user
{
	char name[20];
	char age[10];
};

int main() {
	printf("%d\\n", sizeof(user));//30
	return 0;
}

但是如果要获取结构体中某个元素大小,在不创建结构体的情况下,如何得到呢?

可以这么操作:

#include <stdio.h>

struct user
{
	char name[20];
	char age[10];
};

int main() {
	printf("%d\\n", sizeof((user*)0));//4
	printf("%d\\n", sizeof((user*)0)->name);//20
	printf("%d\\n", sizeof((user*)0)->age);//10
	return 0;
}

这种用法被网友称为空指针操作,大概等价于:

#include <stdio.h>

struct user
{
	char name[20];
	char age[10];
};

int main() {
	user* a = 0;
	//user* a = NULL;
	printf("%d\\n", sizeof(a->age));//10
	return 0;
}

至于为什么能写在同一行上表达,我就不了解了,匿名指针??

参考文章1:c语言如何求得结构体内某个元素的长度

参考文章2:C语言 泛型链表 如何计算(结构体中各元素)相对内存地址?(字节对齐,结构体对齐)offsetof()函数 & ( (struct X*)0 ) -> Y)语法

以上是关于C/C++ 获取AD域 中指定 组名中的用户!的主要内容,如果未能解决你的问题,请参考以下文章

C语言删除字符串中指定字符

在 Notepad++ 中指定多个目录 在文件中查找

C语言-删除字符串中指定的字符

JS函数变量作用域

Simulink Coder:生成 C 代码时如何从脚本中指定自定义 C 文件?

powershell将计算机加入到AD域安全组,并输出日志