Frage
Dies ist mein erstes Mal SharpPcap Bibliothek verwenden.
Ich habe neues Projekt mit VC # 2008 und ich fügte SharpPcap als Verweis auf mein Projekt. Ich poste einen Beispielcode Schnittstelle von meinem PC zu bekommen, aber ich bin immer diese Fehlermeldung:
Fehler 1 Der Typ oder Namespace-Name 'PcapDeviceList' konnte nicht gefunden werden (möglicherweise fehlt eine using-Direktive oder ein Assemblyverweis?) C: \ Users \ Ali \ Documents \ Visual Studio 2008 \ Projects \ Pcap \ Pcap \ Form1 CS- 28 13 Pcap
Beratung bitte dieses Problem zu lösen.
Hier ist mein Code:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using SharpPcap;
using SharpPcap.Packets;
using SharpPcap.Protocols;
using SharpPcap.Util;
namespace Pcap
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
/* Retrieve the device list */
PcapDeviceList devices = SharpPcap.GetAllDevices();
/*If no device exists, print error */
if (devices.Count < 1)
{
Console.WriteLine("No device found on this machine");
return;
}
int i = 0;
/* Scan the list printing every entry */
foreach (PcapDevice dev in devices)
{
/* Description */
label1.Text = "{0}) {1}" + i + dev.PcapDescription +"\n"+
/* Name */
"\tName:\t{0}" + dev.PcapName+"\n"+
/* IP Address */
"\tIP Address: \t\t{0}"+ dev.PcapIpAddress+"\n"+
/* Is Loopback */
"\tLoopback: \t\t{0}"+ dev.PcapLoopback;
i++;
}
}
}
}
Lösung
Welche Version von SharpPcap verwenden Sie?
Ich ziehe ein kleines in Arbeit Projekt von 2.1.1 bis 2.4.1 und Teile der Bibliothek wesentlich verändert haben. Ich kämpfte mit dieser mir nur ein bisschen vor.
LivePcapDeviceList devices = LivePcapDeviceList.Instance;
foreach (LivePcapDevice device in devices)
{
// Do stuff here...
}
Andere Tipps
Es tut uns Leid über die API-Änderungen. Ich versuche immer noch die API korrekt benannt zu bekommen. Ab v3.0 ist die API wesentlich sauberer und sollte ein bisschen mehr statisch für die Zukunft sein. Wenn Sie Probleme Beitrag auf der Entwick-Liste oder sf Foren haben und Sie erhalten eine schnelle Antwort erhalten.
Chris SharpPcap Betreuer / Autor http://sharppcap.sf.net
Versuchen Sie Pcap.Net verwenden. Es ist ein klarer WinPcap Wrapper in .NET.