请教TA两个问题
本帖最后由 ok100fen 于 2010-8-4 22:00 编辑第一,在编译驱动的那个帖子中,那句DbgPrint(“Hello,World!”);加在哪里?
是不是这里?
........................
..........................
{
IoDeleteDevice(pDevObj);
DbgPrint(“Hello,World!”);
return status;
}
return STATUS_SUCCESS;
}
....................................
第二,你的那个驱动模板里应该保留哪几个文件?
(我用的是windowsXP)
最好把文件夹和文件名说一下
谢谢TA 记得以前能编译通过
为什么现在出来一堆错误 想加载什么地方就什么地方 看你想在什么地方输出 解决了 第一个问题jiedengye已经回答了,第二个问题我很无语。。。
如果你喜欢的话,只保留一个.c文件也可以。 本帖最后由 Tesla.Angela 于 2010-8-4 23:19 编辑
另外我想说,学驱动是靠不了别人的(不是我不肯帮你),全在自己。其实上论坛不是来学习的,而是来消遣的。
我现在不上什么乱七八糟的“内核论坛”,学驱动只看两本书:《深入解析Windows操作系统-第四版》和《Windows内核情景分析》。
其它乱七八糟的源码我也不看,只看四份源码:WRK-1.2、ReactOS-0.3.11源码、Windows 2000源码、Windows NT源码。 为什么要问你呢?
因为,只有你讲的我才能听懂
我也不知道为什么:) OK大哥咱们也是老相识了,09年过年咱们就认识了,不过真的不是我不想帮你,作为大学生,我也有很多自己的事情做。。。不是专职到紫水晶做版主的。。。 驱动看着就头痛,哈哈. 我也是看网上的资料,WRK-v1.2,ReactOs自己摸索的.光靠别人是学不好驱动的. 本帖最后由 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:为什么是问题后面跟着" - "而不是":"?因为第一个问题:DbgPrint会变成"第一个问题:DbgPrint". PS:第一个问题 - DbgPrint加在那里,恐怕你是不会看到Hello World了......只有在驱动加载失败的才会看到.常识 ...
xiaoly99 发表于 2010-8-5 15:40 http://www.m5home.com/bbs/images/common/back.gif
DbgPrint是内核函数,驱动加载失败还能调用内核函数??? 我指的是DriverEntry中,IoDeleteDevice(pDevObj); 看到这句话就肯定是加载失败,但是,代码仍然执行. 有些驱动根本不注册DriverObject,也能DbgPrint,我的意思是DriverObject对象因为一个或多个错误被删除就是加载失败,其实返回也是错误的,但是代码仍然能执行,不然IoDeleteDevice是怎么被调用的?
页:
[1]