引用Iphlpapi.h时发生的编译错误

来源:互联网 发布:放100万在余额宝 知乎 编辑:程序博客网 时间:2024/05/29 13:25

 2009.05.10

 

工程在引用Iphlpapi.h这个头文件时发生编译错误。

提示:

microsoft visual studio 8/vc/platformsdk/include/ras.h(61) : error C2065: “HRASCONN”: 未声明的标识符

 

事实上,在另外一个工程(进行UDP连接)里引用同样的头文件时并没有发生错误。

经过分析,正确引用的那个工程在Iphlpapi.h之前引用了winsock2.h。

 

在查看MSDN之后,发现下面的一句话:

GetAdaptersAddresses function calls include information for IPv6 interfaces. Requires Windows Sockets.

 

添加winsock2.h引用后,编译成功。

 

PS1:因为在碰到这个问题时曾经百度了下,粗略地看了下发现没有找到回答。

         总感觉这样解决不是很完美。

         不知道有没有哪位高手有更好的方法解决这个问题。

 

PS2:winsock2.h必须在windows.h之后引用,否则会引起编译错误。

         具体原因待查。

原创粉丝点击