版块
论坛
喜欢
话题
应用
搜索
登录
注册
cyk119的个人空间
访问量
0
新鲜事
帖子
资料
http://bbs3.driverdevelop.com/index.php?m=space&uid=109629
Passthru中为什么要不直接把Packet发送或接收,而另外再建一个MyPacket用来发送和接收?
Passthru中为什么要不直接把Packet发送或接收,而另外再建一个MyPacket用来发送和接收?另外NDIS_SET_ORIGINAL_PACKET、NDIS_SET_PACKET_STATUS、NDIS_SET_PACKET_HEADER_SIZE这三个函数都分别起...
全文
回复
(
7
)
2005-08-05 13:28
来自版块 -
NDIS网络接口开发
◆
◆
表情
告诉我的粉丝
提 交
killerzhu
:
直接用Packet会蓝屏,而用MyPacket则不会蓝屏,不懂原因。。。。。。
(2007-05-07 13:51)
回复
ajy
:
原因很简单,因为某些情况下你并没有收到完整的包,或包堆栈已满,或其它情况, 这时你就必须构造一个新PACKET然后上指; 但也有直接上指这些包的时候, 这在passthru里的ptreceive和ptreceivepacket的某些情况下都使用了.
(2007-02-05 01:28)
回复
shenhui
:
感觉微软这样做的另一个目的就是便于管理所分配的内存,哪一层申请的内存还由哪一层来释放。
(2007-02-01 11:12)
回复
rangzh
:
NDIS4.0及5.0中的中间层驱动必须分配新的包描述符,即使不对包做任何修改(如同Passthru那样)。NDIS5.1支持Packet stack方式 看DDK的说明: NDIS 4.0 and 5.0 intermediate drivers must allocate ...
(2007-01-10 23:22)
回复
zhang_jiaqi
:
下面是引用asmsys于2005-08-05 18:22发表的: MS为我们程序员尽可能做更多的事情呀。 完全可以直接发,但是我们处理包的时候就要多加几行了。 我还是毕业前看过passthru,记得如此就是为了方便我们处理包
(2005-08-05 20:58)
回复
asmsys
:
MS为我们程序员尽可能做更多的事情呀。 完全可以直接发,但是我们处理包的时候就要多加几行了。
(2005-08-05 18:22)
回复
cyk119
:
谁来救救我呀?
(2005-08-05 16:21)
回复
cyk119
加关注
写私信
0
关注
0
粉丝
28
帖子
返回顶部