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之后引用,否则会引起编译错误。
具体原因待查。