以编程方式将LAN计算机名称解析为完全限定名称?

时间:2014-08-28 06:15:05

标签: c++ winapi dns winsock

我正在编写一个C ++应用程序,它接收来自外部世界的LAN计算机名称(例如\\ PCNAME123,我可以通过在Windows运行提示符或IE地址栏中输入来访问)并且需要获取一些基于该名称的数据,例如通过调用gethostbyname()函数。

问题是我需要拥有我认为所谓的(我是Winsock和网络编程的新手,所以我可能没有正确的术语)一个完全限定的名称(例如PCNAME123.domainname.net)。我已对其进行了测试,gethostbyname()可以正常使用,但不适用于“PCNAME123”或“\\ PCNAME123”。

如何获取该网络计算机的完全限定名称(请注意,它不适用于本地主机,而适用于本地网络上的其他计算机)?

2 个答案:

答案 0 :(得分:1)

您可以尝试使用GetAddrInfoW函数获取名称信息。

答案 1 :(得分:1)

要回答我自己的问题,看起来其中一个解决方案是使用getaddrinfo()函数。