slutter
驱动牛犊
驱动牛犊
  • 注册日期2004-08-31
  • 最后登录2010-01-24
  • 粉丝0
  • 关注0
  • 积分1分
  • 威望10点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
阅读:1200回复:2

为何VPACKET.VXD绑定不到网卡上?

楼主#
更多 发布于:2004-08-31 22:18
我想从网卡上抓取数据包,初始化就出问题!
能够创建句柄,但是绑定的时候总是出错!
我是初学者,请多指教,不胜感激!


这是我的代码
HANDLE hVxD;
hVxD = CreateFile("\\\\.\\vPACKET.vxd",
GENERIC_READ | GENERIC_WRITE,
0,
NULL,
OPEN_EXISTING,
FILE_ATTRIBUTE_NORMAL | FILE_FLAG_OVERLAPPED |
FILE_FLAG_DELETE_ON_CLOSE,
NULL);

unsigned char eh[5];
eh[0]='0';eh[1]='0';eh[2]='0';eh[3]='0';eh[4]=0;
Bind(hVxD,eh);

int Bind(HANDLE hVxD, unsigned char * inBuffer)  
{
      HANDLE          hEvent;
      DWORD           cbRet;
      OVERLAPPED     ovlp = {0,0,0,0,0};
      int result;
      int cbIn = 5;
      hEvent = CreateEvent(0, TRUE, 0, NULL);
      ovlp.hEvent = hEvent;
      result = DeviceIoContrl  
      (hVxd,IOCTL_PROTOCOL_BIND,inBuffer, cbIn,
      nBuffer,cbIn, &cbRet,&ovlp);
      CloseHandle(hEvent);
      return 0;
}
Quakexg
驱动小牛
驱动小牛
  • 注册日期2001-11-21
  • 最后登录2012-02-29
  • 粉丝0
  • 关注0
  • 积分8分
  • 威望56点
  • 贡献值0点
  • 好评度18点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2004-09-01 13:08
Createfile 第一个参数错了,仔细看看。
slutter
驱动牛犊
驱动牛犊
  • 注册日期2004-08-31
  • 最后登录2010-01-24
  • 粉丝0
  • 关注0
  • 积分1分
  • 威望10点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2004-09-03 00:02
谢谢!
游客

返回顶部