Jackaroo_lzh
驱动牛犊
驱动牛犊
  • 注册日期2003-10-02
  • 最后登录2004-08-18
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
阅读:1431回复:2

如何判断NdisSend是否发送成功?

楼主#
更多 发布于:2004-03-05 14:01
    我在ptreceive里对收到的udp包,改变MAC地址和IP地址后用NdisSend函数重新发送,在ptsendcomplete里进行了如下处理:NdisUnchainBufferAtFront(Packet,&PacketBuffer);
NdisQueryBufferSafe(PacketBuffer,&virtualaddress,&virtuallength,32);
NdisFreeBuffer(PacketBuffer);
        NdisIMCopySendCompletePerPacketInfo (Pkt, Packet);
        NdisDprFreePacket(Packet);
我用DbgView,发现ptsendcomplete是发生作用的,是否可以确定数据包肯定发到网上去了,但是我在另一端用Sniffer找不到我发的数据包,迷茫中,请指教,谢谢!
我的QQ:267441747
lixiangying
驱动牛犊
驱动牛犊
  • 注册日期2002-05-03
  • 最后登录2007-09-09
  • 粉丝0
  • 关注0
  • 积分9分
  • 威望1点
  • 贡献值0点
  • 好评度1点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2004-03-05 19:02
函数ndissend() 返回pending 时会调用ptsendcomplete,但在另一端收没收到你发的包与此无关。检查ip校验和与udp 校验和是否正确设置了。
yongliliu
驱动小牛
驱动小牛
  • 注册日期2003-10-20
  • 最后登录2007-09-28
  • 粉丝0
  • 关注0
  • 积分11分
  • 威望2点
  • 贡献值0点
  • 好评度1点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2004-03-08 17:37
最好用第三台电脑的sniffer抓包;)因为考虑W2K的安全策略是否起作用
成功不是天上掉下来的免费的丰盛的晚餐!
游客

返回顶部