在VCL工程中使用socket时应在什么地方包含mstcpip.h头文件
在网上看到很多在builder下使用socket的例程都是控制台程序,因此这些程序只要在main函数之前包含mstcpip.h文件并加入ws2_32.lib库文件就可以使程序正常运行。但我现在要用socket写一个在WinXP下抓取IP包的Application,不知道应该在哪里包含这些winsock头文件和库文件。
我的程序除了一般Application工程都有的主窗体文件(TForm1.cpp)和组件文件(Unit1.cpp和Unit1.h),还包含了一个我自己写的Listener.h和Listener.cpp,在这两个文件中我封装了一个TListener类,用于捕获IP包并且在捕获之后向主窗体发送一个消息,使得数据包能够在主窗体中的列表框中显示。
我曾经尝试在Listener.cpp中包含mstcpip.h和ws2_32.lib,但编译居然说找不到WSASocket这类的winsock函数;然后我又包含了winsock2.h,它又提示头文件里的一些数据类型有重复定义。最后我尝试在各个文件中包含mstcpip.h和ws2_32.lib,编译都有错误!因此我感到非常困惑。请大家帮帮忙!谢谢!