報錯:沒法打開源文件sys/time.h和u_int
緣由:這些都是unix系統的東西,須要在主文件中指明是windows系統
解決方法:#define WIN32ios
報錯:找不到源文件stdafx.h
緣由:已經再預編譯頭中定義,不須要多餘includec++
報錯:const char 與char *不兼容
解決方法:屬性 -> C/C++ -> 語言 -> 符合模式 -> 否windows
#include "pcap.h" #include "windows.h" #include <iostream> using namespace std; #pragma comment(lib, "wpcap.lib") int main() { pcap_if_t *alldevs; pcap_if_t *d; int i = 0; char errbuf[PCAP_ERRBUF_SIZE]; /*獲取本地機器設備列表*/ if (pcap_findalldevs_ex(PCAP_SRC_IF_STRING, NULL /* auth is not needed */, &alldevs, errbuf) == -1) { fprintf(stderr, "Error in pcap_findalldevs_ex: %s\n", errbuf); exit(1); } /*打印列表*/ for (d = alldevs; d != NULL; d = d->next) { printf("%d.%s", ++i, d->name); if (d->description) printf("(%s)\n", d->description); else printf("(No description available)\n"); } int a; cin >> a;//卡一下輸出 if (i == 0) { printf("\nNo interfaces found!Make sure WinPcap is installed.\n"); return 0; } pcap_freealldevs(alldevs); }
參考資料: