首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

为什么小弟我写的这些 没效果?关于SharpPcap的有关问题

2012-03-21 
为什么我写的这些 没效果?关于SharpPcap的问题如题,我根据SharpPcap写了一个 监视封包的 类 但是为什么 调

为什么我写的这些 没效果?关于SharpPcap的问题
如题,我根据SharpPcap写了一个 监视封包的 类 但是为什么 调用 Run方法后OnPacketArrival事件的处理函数就是收不到一个数据呢?真的是很奇怪啊。。。为什么呢?也不报错。。。就是没反映(不是程序挂死,只是收不到任何的数据)查了很久就是没结果,难道是SharpPcap的内部错误,我想应该不会吧。。。。
请高手给我看一下。。。

C# code
 public class Device:IDisposable    {         public Device()        {            //.Devices(System.Net.IPAddress.Any, 0, new Win.RemoteAuthentication(Win.AuthenticationTypes.Null, "", ""));                  }        public void Run(SharpPcap.PacketArrivalEventHandler packetArrival,string filter)        {                        OriDevice = OriDevices[1];            if (filter == string.Empty)            {                filter = "ip and tcp";            }            OriDevice.OnPacketArrival += new PacketArrivalEventHandler(packetArrival);//设置异步拦截事件            OriDevice.OnPacketArrival += new PacketArrivalEventHandler(OriDevice_OnPacketArrival);            OriDevice.Open(SharpPcap.DeviceMode.Promiscuous,0);//打开设备            OriDevice.Filter = filter;//设置拦截过滤器            OriDevice.Mode = CaptureMode.Packets;            //OriDevice.LinkType             OriDevice.StartCapture();//开始拦截            //OriDevice.StopCapture();//开始拦截            //OriDevice.Close();                }        void OriDevice_OnPacketArrival(object sender, CaptureEventArgs e)        {            System.Diagnostics.Debug.Write("OK");        }        public WinPcapDeviceList OriDevices { get { return WinPcapDeviceList.Instance; } }        public void Stop()        {            if(OriDevice!=null)            OriDevice.StopCapture();        }        public void Close()        {            if (OriDevice != null)            {                OriDevice.StopCapture();                OriDevice.Close();            }        }        public WinPcapDevice OriDevice { get; set; }        #region IDisposable 成员        public void Dispose()        {            Close();            OriDevice = null;        }


[解决办法]
WinPcap有没有安装?

热点排行