Domanda
Questa è la mia prima volta da usare biblioteca SharpPcap.
Ho creato nuovo progetto con VC # 2008 e ho aggiunto SharpPcap come riferimento per il mio progetto. I post di un codice di esempio per ottenere l'interfaccia del mio pc, ma sto ottenendo questo errore:
di errore 1 Il tipo o dello spazio dei nomi il nome 'PcapDeviceList' non è stato trovato (che le manca un un riferimento all'assembly direttiva using o?) C: \ Users \ Ali \ Documenti \ Visual Studio 2008 \ Projects \ Pcap \ Pcap \ Form1 cs 28 13 Pcap
Si prega di consulenza per risolvere questo problema.
Ecco il mio codice:
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++;
}
}
}
}
Soluzione
Quale versione di SharpPcap stai usando?
mi sto muovendo un piccolo progetto in-lavoro da 2.1.1 a 2.4.1, e parti della libreria sono notevolmente cambiate. Ho lottato con questo me stesso solo un po 'fa.
LivePcapDeviceList devices = LivePcapDeviceList.Instance;
foreach (LivePcapDevice device in devices)
{
// Do stuff here...
}
Altri suggerimenti
Mi dispiace per i cambiamenti API. Sto ancora cercando di ottenere l'API di nome in modo corretto. Al v3.0 API è notevolmente più pulito e dovrebbe essere un po 'più statico andando avanti. Se avete qualche difficoltà posta sulla lista devel o forum di SF e si otterrà una risposta rapida.
Chris SharpPcap manutentore / autore http://sharppcap.sf.net
Prova a usare Pcap.Net . E 'un chiaro involucro WinPcap in .NET.