Вопрос

Это мой первый раз, чтобы использовать библиотеку SharpPCAP.

Я создал новый проект с VC # 2008, и я добавил SharpPCAP в качестве ссылки на мой проект. Я публикую образец код, чтобы получить интерфейс моего компьютера, но я получаю эту ошибку:

Ошибка 1 Тип или имя пространства имен «PCAPDEVICECELIST» не может быть найден (вы не хватаете Директивой к использованию или ссылку на сборку?) C: Users Ali Documents Visual Studio 2008 Projects PCAP PCAP Form1.cs 28 13 PCAP.

Пожалуйста, совет, чтобы решить эту проблему.

Вот мой код:

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++;
            }
        }
    }
}
Это было полезно?

Решение

Какую версию SharpPCAP вы используете?

Я перемещаю небольшой проект в работе с 2.1.1 до 2.4.1, а части библиотеки значительно изменились. Я боролся с этим сам немного немного назад.

LivePcapDeviceList devices = LivePcapDeviceList.Instance;
    foreach (LivePcapDevice device in devices)
    {
         // Do stuff here...
    }

Другие советы

Извините за изменения API. Я все еще пытаюсь правильно получить API. По состоянию на V3.0 API значительно уборчивает и должен быть немного более статичным. Если у вас есть какие-либо проблемы по телефону в списке Evel или Forums SF, и вы получите быстрый ответ.

Chris SharpPcap сопровождающий / авторhttp://sharppcap.sf.net.net.

Попробуйте использовать Pcap.net.. Отказ Это ясная обертка WinPCAP в .NET.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top