c++ - 如何获取工作站所属的 Active Directory 域的全名

标签 c++ active-directory

我认为 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/

相关文章:

c++ - 检查初始化列表中的空 vector

active-directory - 将逗号添加到 dsquery 输出

asp.net-core - 在 Active Directory 环境中生成 JWT

java - 如何在没有管理员用户的情况下通过 JNDI 在 Active Directory 中更改过期密码

java - LDAP 过滤器查询如何工作,特别是在 Java LDAP/spring LDAP 中?

c# - 将 ASP.NET 网站管理工具功能引入网页

c++ - 重载运算符参数

c++ - 如何在其他变量中加入2个变量

c++ - 将指针存储到 vector 中时出现内存泄漏

c++ - undefined reference 和非虚拟 thunk