jinsin
驱动牛犊
驱动牛犊
  • 注册日期2002-11-12
  • 最后登录2005-05-23
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
阅读:2213回复:15

PtSendComplete返回时非法操作?

楼主#
更多 发布于:2003-06-10 11:11
在PtSendComplete函数中,当函数结束之后,马上就蓝屏。
在PtSendComplete中,我仔细察看了内存分配函数,好像并无错误。
而且,奇怪的是,有的网卡就不会出现这种错误。有的网卡会。而且,越高档的网卡越容易出现。

谢谢了。
jinsin
驱动牛犊
驱动牛犊
  • 注册日期2002-11-12
  • 最后登录2005-05-23
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2003-06-11 10:10
难道真的没人知道了吗?我已经用尽了各种方法了。
jinsin
驱动牛犊
驱动牛犊
  • 注册日期2002-11-12
  • 最后登录2005-05-23
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2003-06-11 15:37
看到蓝屏的信息,是ndis.sys出的错。

真的没人知道吗?
LinX
驱动牛犊
驱动牛犊
  • 注册日期2002-08-19
  • 最后登录2007-07-05
  • 粉丝0
  • 关注0
  • 积分100分
  • 威望10点
  • 贡献值0点
  • 好评度10点
  • 原创分0分
  • 专家分0分
地板#
发布于:2003-06-12 12:30
是在哪个OS下面? WINDOWS XP吗?
antspower
驱动中牛
驱动中牛
  • 注册日期2002-10-17
  • 最后登录2010-08-03
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值2点
  • 好评度0点
  • 原创分0分
  • 专家分0分
地下室#
发布于:2003-06-12 12:58
帮你顶一下
放弃瘟草,现吃李草
jinsin
驱动牛犊
驱动牛犊
  • 注册日期2002-11-12
  • 最后登录2005-05-23
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
5楼#
发布于:2003-06-12 17:47
在windows2000下,在顶一下。
jinsin
驱动牛犊
驱动牛犊
  • 注册日期2002-11-12
  • 最后登录2005-05-23
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
6楼#
发布于:2003-06-16 09:31
试了很多网卡,只有intel 825xx要出现问题。
dshadow79
驱动牛犊
驱动牛犊
  • 注册日期2002-09-29
  • 最后登录2006-04-10
  • 粉丝0
  • 关注0
  • 积分20分
  • 威望2点
  • 贡献值0点
  • 好评度2点
  • 原创分0分
  • 专家分0分
7楼#
发布于:2003-06-16 17:53
肯定不会是网卡的问题,说清楚你是怎么调用ndissend的
antspower
驱动中牛
驱动中牛
  • 注册日期2002-10-17
  • 最后登录2010-08-03
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值2点
  • 好评度0点
  • 原创分0分
  • 专家分0分
8楼#
发布于:2003-06-16 21:56
我觉得肯定不是网卡的问题,是程序有问题。
同意dshadow79的说话,应该是网卡不同PASSTHRU的流程不一样你的
在NDISSEND中得到的资源没释放对
放弃瘟草,现吃李草
dshadow79
驱动牛犊
驱动牛犊
  • 注册日期2002-09-29
  • 最后登录2006-04-10
  • 粉丝0
  • 关注0
  • 积分20分
  • 威望2点
  • 贡献值0点
  • 好评度2点
  • 原创分0分
  • 专家分0分
9楼#
发布于:2003-06-17 16:06
 :P 中级会员啦?向往中……
jinsin
驱动牛犊
驱动牛犊
  • 注册日期2002-11-12
  • 最后登录2005-05-23
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
10楼#
发布于:2003-06-18 09:31
相关的资源我已经严格的ndis的释放规则,进行了释放,而且确实是我自己分配的资源。
dshadow79
驱动牛犊
驱动牛犊
  • 注册日期2002-09-29
  • 最后登录2006-04-10
  • 粉丝0
  • 关注0
  • 积分20分
  • 威望2点
  • 贡献值0点
  • 好评度2点
  • 原创分0分
  • 专家分0分
11楼#
发布于:2003-06-18 10:28
把你调用ndissend的代码贴出来,还有ptsendcomplete
antspower
驱动中牛
驱动中牛
  • 注册日期2002-10-17
  • 最后登录2010-08-03
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值2点
  • 好评度0点
  • 原创分0分
  • 专家分0分
12楼#
发布于:2003-06-22 18:57
哥们,我现在也遇到了这个问题.郁闷啊.
放弃瘟草,现吃李草
jinsin
驱动牛犊
驱动牛犊
  • 注册日期2002-11-12
  • 最后登录2005-05-23
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
13楼#
发布于:2003-06-23 09:34
准备弄个ndis的checked版本,然后再看,有结果就通报大家。
antspower
驱动中牛
驱动中牛
  • 注册日期2002-10-17
  • 最后登录2010-08-03
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值2点
  • 好评度0点
  • 原创分0分
  • 专家分0分
14楼#
发布于:2003-06-28 08:42
我的问题解决了
现在我认为你肯定是ptsendcomplete对内存的释放有问题。
如果在收报中调用NDISSEND,如果返回PENDING那么ptsendcomplete
释放分4种情况
1。如果你在ptreceive中并且PACKET==NULL时并且不需要transferdata时
2。ptrecive中PACKET==NULL,并且要tranferdata
3。ptreceive中PACKET!=NULL
4。ptreceivepakcet中。
每一种情况都不同!
特别是3,因为真正的数据还没有传上来。释放要小心!

放弃瘟草,现吃李草
jinsin
驱动牛犊
驱动牛犊
  • 注册日期2002-11-12
  • 最后登录2005-05-23
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
15楼#
发布于:2003-06-30 16:58
我并不是在ptreceive中调用,而且,我所有的ndissend包,都是自己构造的,严格的遵循了谁分配谁释放的原则。


现在正忙于98的移植,太难了
游客

返回顶部