首页
社区
课程
招聘
驱动开发蓝屏
发表于: 2013-9-21 12:47 6148

驱动开发蓝屏

2013-9-21 12:47
6148
PGET_LENGTH_INFORMATION get_length_information;
get_length_information = (PGET_LENGTH_INFORMATION) Irp->AssociatedIrp.SystemBuffer;
get_length_information->Length.HighPart = 8*1024*1024;<--这里赋值太大,就会蓝屏,像现在这样也会蓝屏,8*1024不会

status = STATUS_SUCCESS;
Irp->IoStatus.Information = sizeof(GET_LENGTH_INFORMATION);

[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

收藏
免费 0
支持
分享
最新回复 (5)
雪    币: 80
活跃值: (109)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
2
KebugcheckEx()不就搞定了么?
求高人指点,r3下如何实现?

收藏了。up
2013-9-21 13:26
0
雪    币: 41
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
到定义处改long试试
2013-9-21 19:50
0
雪    币: 0
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
Length是LARGE_INTEGER 类型的,其中HighPart是long型的。你试试get_length_information->Length.HighPart = 8*1024*1024L;  这样写。
2013-9-21 20:33
0
雪    币: 12
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
不行,会蓝屏.
2013-9-21 22:59
0
雪    币: 12
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
经过测试,解决了
上面的代码是用来响应这个的,IOCTL_DISK_GET_LENGTH_INFO
硬盘大小大于8M并且要是M的倍数时,IOCTL_DISK_GET_LENGTH_INFO响应算成功,然后就会发一个要求读1000的请求,我的是在这个读请求中出错,导致蓝屏,所以看起来像IOCTL_DISK_GET_LENGTH_INFO出问题,其它是IRP_MJ_READ出问题.
2013-9-22 00:27
0
游客
登录 | 注册 方可回帖
返回
//