请教一个vs2008中编译简单驱动的问题

IT保安 2014-11-28 04:05:23
#include <ntddk.h>
#define INITCODE code_seg("INIT")
#pragma INITCODE
void DDK_Unload(IN PDRIVER_OBJECT pDriverObject);
NTSTATUS DriverEntry(PDRIVER_OBJECT pDriverObject,PUNICODE_STRING B)
{
//KdPrint仅在check环境下启用,用作调试,free环境下无效
KdPrint(("驱动已加载!"));

pDriverObject->DriverUnload = DDK_Unload; //卸载所用的回调函数
return 1;
}

void DDK_Unload(IN PDRIVER_OBJECT pDriverObject)
{
KdPrint(("卸载完成!"));
}

编译了一个简单驱动,代码如上!编译成功,但是有错误提示:无法启动此程序,因为计算机中丢失HAL.dll
尝试重新安装改程序以解决此问题!
这个简单的驱动我测试了一下,好像正常的没有问题,在DEBUGVIEW中能看到设置的字符串显示出来了。那么这个错误提示是怎么回事啊?

我用的VS2008版本,环境已设置过!

...全文
226 1 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
赵4老师 2014-11-28
  • 打赏
  • 举报
回复
C:\WINDOWS\system32\hal.dll http://www.dllzj.com
现在很多做透明加解密的初学者都比较困惑,不知从何下手,我也是如此,从什么都不会开始,慢慢肯文件系统内幕,到OSR上面请教,四个月的时间还是收获颇丰。其实真正研究以后会发现,很多都是体力活,要不断的去跟踪文件的操作流程。在这里发一个基于minifilter的透明加解密的驱动源码仅供大家参考,其也实现了对文件标识的处理,文件标识放在文件尾部。算是抛砖引玉吧。坦白的说,这个代码并不稳定(偶尔与norton杀毒软件会有冲突),但是我觉得整个流程是正确的,可能有些细节还没有考虑清楚,我觉得对初学者还是有一定帮助吧,当然大虾们可以跳过,呵呵。另外,有关加解密算法的代码由于不是我写的,也不好公开,所以我把相关代码用“\\\”给注释掉了(但没有去掉),请大家见谅,不过不会对整个流程产生影响。大家可以重点看一下各个派遣函数的实现。 欢迎大家拍砖,觉得有点意思就顶一下啊,在看代码的过程如果有什么好的建议,也希望能告诉我。 最后非常感谢XiangXiangRen,zzbwang,neak47等网友在这段时间内对我的帮助。XiangXiangRen的书以及zzbwang的帖子对我完成这项工作有很大的帮助和参考价值,在此谨与大家分享。 编译环境:WDK6001.18002 XP x86 PS: 您可以将附件的代码进行修改和转发,但转发时请注明出处。 http://bbs.driverdevelop.com/htm_data/39/1001/119736.html

65,199

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧