找回密码
 加入我们

QQ登录

只需一步,快速开始

搜索
查看: 10823|回复: 13

请教TA两个问题

 火.. [复制链接]

90

主题

473

回帖

2

精华

钻石会员

积分
3261
发表于 2010-8-4 21:55:06 | 显示全部楼层 |阅读模式
本帖最后由 ok100fen 于 2010-8-4 22:00 编辑

第一,在编译驱动的那个帖子中,那句DbgPrint(“Hello,World!”);加在哪里?
是不是这里?
........................
..........................
{
  IoDeleteDevice(pDevObj);
  DbgPrint(“Hello,World!”);
  return status;
                 
}
return STATUS_SUCCESS;
}
....................................

第二,你的那个驱动模板里应该保留哪几个文件?
(我用的是windowsXP)
最好把文件夹和文件名说一下

谢谢TA

90

主题

473

回帖

2

精华

钻石会员

积分
3261
 楼主| 发表于 2010-8-4 21:57:12 | 显示全部楼层
记得以前能编译通过
为什么现在出来一堆错误

29

主题

134

回帖

4

精华

论坛元老

积分
5970
QQ
发表于 2010-8-4 22:02:57 | 显示全部楼层
想加载什么地方就什么地方 看你想在什么地方输出

90

主题

473

回帖

2

精华

钻石会员

积分
3261
 楼主| 发表于 2010-8-4 23:09:00 | 显示全部楼层
解决了

857

主题

2632

回帖

2

精华

管理员

此生无悔入华夏,  长居日耳曼尼亚。  

积分
36130
发表于 2010-8-4 23:12:47 | 显示全部楼层
第一个问题jiedengye已经回答了,第二个问题我很无语。。。
如果你喜欢的话,只保留一个.c文件也可以。

857

主题

2632

回帖

2

精华

管理员

此生无悔入华夏,  长居日耳曼尼亚。  

积分
36130
发表于 2010-8-4 23:18:20 | 显示全部楼层
本帖最后由 Tesla.Angela 于 2010-8-4 23:19 编辑

另外我想说,学驱动是靠不了别人的(不是我不肯帮你),全在自己。其实上论坛不是来学习的,而是来消遣的。
我现在不上什么乱七八糟的“内核论坛”,学驱动只看两本书:《深入解析Windows操作系统-第四版》和《Windows内核情景分析》。
其它乱七八糟的源码我也不看,只看四份源码:WRK-1.2、ReactOS-0.3.11源码、Windows 2000源码、Windows NT源码。

90

主题

473

回帖

2

精华

钻石会员

积分
3261
 楼主| 发表于 2010-8-4 23:40:13 | 显示全部楼层
为什么要问你呢?
因为,只有你讲的我才能听懂

我也不知道为什么

857

主题

2632

回帖

2

精华

管理员

此生无悔入华夏,  长居日耳曼尼亚。  

积分
36130
发表于 2010-8-4 23:59:31 | 显示全部楼层
OK大哥咱们也是老相识了,09年过年咱们就认识了,不过真的不是我不想帮你,作为大学生,我也有很多自己的事情做。。。不是专职到紫水晶做版主的。。。

275

主题

3017

回帖

1

精华

管理员

嗷嗷叫的老马

积分
17064

论坛牛人贡献奖关注奖最佳版主进步奖人气王疯狂作品奖精英奖赞助论坛勋章乐于助人勋章

QQ
发表于 2010-8-5 09:27:08 | 显示全部楼层
驱动看着就头痛,哈哈.
我就是嗷嗷叫的老马了......

6

主题

196

回帖

0

精华

铜牌会员

菜鸟

积分
52
发表于 2010-8-5 15:29:43 | 显示全部楼层
我也是看网上的资料,WRK-v1.2,ReactOs自己摸索的.光靠别人是学不好驱动的.

6

主题

196

回帖

0

精华

铜牌会员

菜鸟

积分
52
发表于 2010-8-5 15:40:20 | 显示全部楼层
本帖最后由 xiaoly99 于 2010-8-5 15:41 编辑

PS:第一个问题 - DbgPrint加在那里,恐怕你是不会看到Hello World了......只有在驱动加载失败的才会看到.常识常识
PST:NT4.0比2000早,好像是96年出来的.WRK-v1.2是Xp,前面这两个比Xp小.
PSP:第二个问题 - source,makefile这两个是必要的.c文件也是最少要有一个的,h文件可以不要,前提是里面的代码没用或者你把它放在c文件里面.当然,如果你不想编译,一个文件不留也没关系.
PSPT:为什么是问题后面跟着" - "而不是":"?因为
  1. 第一个问题:DbgPrint
复制代码
会变成"第一个问题bgPrint".

857

主题

2632

回帖

2

精华

管理员

此生无悔入华夏,  长居日耳曼尼亚。  

积分
36130
发表于 2010-8-5 17:49:24 | 显示全部楼层
PS:第一个问题 - DbgPrint加在那里,恐怕你是不会看到Hello World了......只有在驱动加载失败的才会看到.常识 ...
xiaoly99 发表于 2010-8-5 15:40



DbgPrint是内核函数,驱动加载失败还能调用内核函数???

6

主题

196

回帖

0

精华

铜牌会员

菜鸟

积分
52
发表于 2010-8-6 13:21:53 | 显示全部楼层
我指的是DriverEntry中,IoDeleteDevice(pDevObj); 看到这句话就肯定是加载失败,但是,代码仍然执行.

6

主题

196

回帖

0

精华

铜牌会员

菜鸟

积分
52
发表于 2010-8-6 13:23:54 | 显示全部楼层
有些驱动根本不注册DriverObject,也能DbgPrint,我的意思是DriverObject对象因为一个或多个错误被删除就是加载失败,其实返回也是错误的,但是代码仍然能执行,不然IoDeleteDevice是怎么被调用的?
您需要登录后才可以回帖 登录 | 加入我们

本版积分规则

快速回复 返回顶部 返回列表