winpcap(windows packet capture)是windows平台下一個免費,公共的網絡訪問系統。開發winpcap這個項目的目的在於為win32應用程序提供訪問網絡底層的能力。
下面將詳細介紹如何在VS2013使用winpcap開發網絡應用程序。
1.首先,從http://www.winpcap.org/下載winpcap.exe和Developer's Pack.。安裝winpcap.exe,並將Developer's Pack進行解壓。
2.配置VS2013。在VS2013中新建一個空工程。具體設置如下:
(1)項目 →屬性→配置屬性→點擊C/C++目錄,點擊展開的目錄General,在右側的Additional Include Directories中添加Include目錄(Include目錄在WpdPack中)
(2)項目 →屬性→配置屬性→點擊C/C++目錄,在右邊的Preprocessor Definition加上WPCAP,HAVE_REMOTE,WIN32;
(3)項目 →屬性→配置屬性→點擊Linker目錄,點擊展開的目錄General,在右邊的Additional Library Directories中添加lib目錄(Lib目錄在WpdPack中)
(4)項目 →屬性→配置屬性→點擊Linker目錄下的Input,在右側的Additional Dependencies中添加wpcap.lib和Packet.lib。
下面給一個簡單地例子:
#include pcap_if_t * pcap_if_t * i = (pcap_findalldevs_ex(PCAP_SRC_IF_STRING, NULL , &alldevs, errbuf) == - fprintf(stderr, exit( (d = alldevs; d != NULL; d = d-> printf(, ++i, d-> (d-> printf(, d-> printf( (i == printf( system( }