我认为 NetGetJoinInformation()
函数可能会提供工作站所属的 AD 域的名称,但它只提供 pre-windows 2000 (Netbios) 格式的域名。
例如,如果 AD 域的全名是 TestDomain.Lan,则 NetGetJoinInformation()
返回 TESTDOMAIN 作为域名。
需要一个可以在没有 .Net 的情况下在 W2K 和 XP 上运行的功能
最佳答案
我相信 GetNetworkParams()
就是您要找的。问答演示代码:
#include <windows.h>
#include <iphlpapi.h>
#include <iostream>
#pragma comment(lib, "iphlpapi.lib")
int main() {
FIXED_INFO *net_params = NULL;
unsigned long length = 0;
GetNetworkParams(net_params, &length);
net_params = static_cast<FIXED_INFO *>(::operator new(length));
GetNetworkParams(net_params, &length);
std::cout << "Domain Name: " << net_params->DomainName << "\n";
::operator delete(net_params);
return 0;
}
关于c++ - 如何获取工作站所属的 Active Directory 域的全名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2631170/