通常,編寫基於WinPcap應用程序的第一件事情,就是獲得已連接的網絡適配器列表。libpcap和WinPcap都提供了 pcap_findalldevs_ex() 函數來實現這個功能: 這個函數返回一個 pcap_if 結構的鏈表, 每個這樣的結構都包含了一個適配器的詳細信息。值得注意的是,數據域 name 和 description 表示一個適配器名稱和一個可以讓人們理解的描述。
第一步:將 項目——項目屬性——配置屬性——連接器——清單文件——嵌入清單 “是”改爲“否”。若還不能解決問題進入第二步。
第二步:查看計算機是否爲64bit操作系統,如是,繼續如下操作。
查找是否有兩個cvtres.exe。
C:\Program Files(x86)\Microsoft Visual Studio 10.0\vc\bin\cvtres.exe
C:\Windows\Microsoft.NET\Framework\v4.0.30319\cvtres.exe
右鍵屬性—詳細信息, 查看兩者版本號,刪除/重命名較舊的版本,或者重新設置Path變量。
治本的辦法是第二步,刪除舊版本的cvtres.exe後,就不需要每次都設置配置了。
例如: del C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin\cvtres.exe
修改成
for(d= alldevs; d != NULL; d= d->next)
{
printf("%d. %s", ++i, d->name);
if (d->description)
m_comboBox.AddString(CString(d->description));
}