lskxl
驱动牛犊
驱动牛犊
  • 注册日期2003-05-05
  • 最后登录2009-05-26
  • 粉丝0
  • 关注0
  • 积分15分
  • 威望101点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
阅读:1486回复:6

中间驱动的PtReceive函数(50分)

楼主#
更多 发布于:2003-05-17 20:56
Packet = NdisGetReceivedPacket(pAdapt->BindingHandle..)
if(Packet!=NULL)

为什么每次都返回的是NULL啊?

还有一个问题是
我在一台机子上发现接收数据的时候调用的是PtReceive函数
而在另一台机子上接收数据时调用的是PtReceivePacket函数

请问是怎么回事啊
magicx
驱动老牛
驱动老牛
  • 注册日期2002-02-22
  • 最后登录2014-08-18
  • 粉丝1
  • 关注0
  • 积分-14分
  • 威望13点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2003-05-18 12:14
Packet = NdisGetReceivedPacket(pAdapt->BindingHandle..)
if(Packet!=NULL)

为什么每次都返回的是NULL啊?

还有一个问题是
我在一台机子上发现接收数据的时候调用的是PtReceive函数
而在另一台机子上接收数据时调用的是PtReceivePacket函数

请问是怎么回事啊


嘿嘿~~~

这》完全《取决于网卡驱动程序是调用什么函数指示包给你的。
一种是整包,一种是分开的。
[color=red]大头鬼! :P[/color]
ruberman
驱动牛犊
驱动牛犊
  • 注册日期2003-04-08
  • 最后登录2011-04-06
  • 粉丝0
  • 关注0
  • 积分150分
  • 威望15点
  • 贡献值0点
  • 好评度15点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2003-05-18 12:37
这取决于不同的网卡,你可以看一下以前HU大侠的帖子,对这个有详尽的解释.
lskxl
驱动牛犊
驱动牛犊
  • 注册日期2003-05-05
  • 最后登录2009-05-26
  • 粉丝0
  • 关注0
  • 积分15分
  • 威望101点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
地板#
发布于:2003-05-18 15:03
请问这个帖子在哪里啊
不太好找哦,那么多
谢了
mikeluo
驱动老牛
驱动老牛
  • 注册日期2001-09-04
  • 最后登录2007-05-07
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
地下室#
发布于:2003-05-18 17:29
网卡indicatereceive的时候调用的是receive,indacatereceivepacket的时候调用的是receivepacket。

比较新式的网卡在indicatereceive的时候lookaheadbufferszie都是等于packetsize的,其实NdisGetReceivedPacket能否成功取决于是否有oob数据,如果没有,返回的就是空。
学而不思则罔,思而不学则殆 学而思之,思而学之,岂非圣人乎?
IanWu
驱动牛犊
驱动牛犊
  • 注册日期2003-05-13
  • 最后登录2004-02-12
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
5楼#
发布于:2003-05-18 20:48
我也遇到了这个问题,packet返回时总是null。这样的话,我怎么获得包啊。
mikeluo
驱动老牛
驱动老牛
  • 注册日期2001-09-04
  • 最后登录2007-05-07
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
6楼#
发布于:2003-05-19 09:21
就从lookaheadbuffer里面获得packet的内容。
学而不思则罔,思而不学则殆 学而思之,思而学之,岂非圣人乎?
游客

返回顶部