我想要完整的计算机名称abc.xyz.xvvx.net 计算机名称 - abc 域名: - xyz.xvvx.net
我用Google搜索并找到了这个功能 GetNameInfoW((struct sockaddr *)& saGNI,sizeof(struct sockaddr),hostname,NI_MAXHOST,servInfo,NI_MAXSERV,NI_NAMEREQD);
如果计算机仅在检索计算机名称(abc)时驻留在其他域中,则此函数不会检索域名。但是,它在相同域(abc.xyz.xvvx.net)的情况下可以正常工作。
请帮助我....
此致 Sameer Deshmukh
答案 0 :(得分:0)
我会向您推荐功能GetComputerNameEx
。 MSDN上的文档有一个可运行的示例,它会淡化任何其他特定的示例。尝试编译并运行它,我相信你会找到合适的计算机名称格式。GetComputerNameEx虽然它只能给出你本地计算机的正确名称。
我再想一想。为什么要从IP中检索域名? 根据我的知识,域是一个逻辑概念。而且我找不到从IP地址到其域的映射的充分理由。
由于gethostbyaddr
种功能由DNS服务支持。
对于Windows服务器,每个域都有自己的DNS服务器作为特定域的名称服务。无需在同一域中区分计算机的域名。所以我想如果你真的想从IP获取域名,至少DNS协议应该支持它。但是,据我所知,并不是这样。
如果你有其他想法,请纠正我。