AllenZh
驱动老牛
驱动老牛
  • 注册日期2001-08-19
  • 最后登录2015-11-27
  • 粉丝19
  • 关注10
  • 积分1316分
  • 威望2387点
  • 贡献值7点
  • 好评度321点
  • 原创分0分
  • 专家分0分
阅读:1159回复:2

关于passthru功能的讨论

楼主#
更多 发布于:2002-08-05 18:09
1、在passthru驱动程序为什么在多个NIC下不能正常得到数据?
2、在多个NIC下怎样在passthru中将数据发送出去,如将数组bData[100]的数据发送到所有NIC,当然需要构造以太网头、IP头和UDP头信息,为了简化假定bData中已经有所有头信息并且正确,那么怎么实现呢?
1,承接Windows下驱动/应用开发 2,本人原创虚拟鼠标/键盘,触摸屏,虚拟显卡,Mirror驱动,XP无盘的SCSI虚拟磁盘驱动等 3,windows下有尝技术服务(包括BUG调试,员工培训等) 欢迎深圳和海外企业联系.msn:mfczmh@sina.com
ufo_online
驱动牛犊
驱动牛犊
  • 注册日期2002-04-26
  • 最后登录2004-03-26
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2002-08-06 08:35
 
在多个NIC下怎样在passthru中将数据发送出去,如将数组bData[100]的数据发送到所有NIC,当然需要构造以太网头、IP头和UDP头信息,为了简化假定bData中已经有所有头信息并且正确,那么怎么实现呢?

既然bData中已经有所有头信息并且正确,那就直接NdisSend不就完了?
另外,passthru中间层驱动所得到的包本来就包括了上述信息,何需假设?
AllenZh
驱动老牛
驱动老牛
  • 注册日期2001-08-19
  • 最后登录2015-11-27
  • 粉丝19
  • 关注10
  • 积分1316分
  • 威望2387点
  • 贡献值7点
  • 好评度321点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2002-08-06 11:36
[quote] 在多个NIC下怎样在passthru中将数据发送出去,如将数组bData[100]的数据发送到所有NIC,当然需要构造以太网头、IP头和UDP头信息,为了简化假定bData中已经有所有头信息并且正确,那么怎么实现呢?

既然bData中已经有所有头信息并且正确,那就直接NdisSend不就完了?
另外,passthru中间层驱动所得到的包本来就包括了上述信息,何需假设? [/quote]

老兄高见,但是bData中包含我自己构造的IGMP数据信息,而不是从passthru的ProtocolReceive,ProtocolReceivePacket等得到的数据呀,怎么将bData数据打包呢?比如首先调用NdisAllocatePacket分配一个PNDIS_PACKET,然后怎么将bData中的数据填充到Packet中呢?我可是第一次写Ndis驱动呀?什么都不懂,感觉Ndis比其它Kernel Driver难,主要是有很多宏、数据结构,当然还有很多新的内存管理函数,老兄能不能具体点,多谢啦
1,承接Windows下驱动/应用开发 2,本人原创虚拟鼠标/键盘,触摸屏,虚拟显卡,Mirror驱动,XP无盘的SCSI虚拟磁盘驱动等 3,windows下有尝技术服务(包括BUG调试,员工培训等) 欢迎深圳和海外企业联系.msn:mfczmh@sina.com
游客

返回顶部