一个驱动问题

Miss丿小沫 2014-02-08 11:42:50
问一下大家!
我是个驱动小白,
一个驱动程序 后缀是sys的
在别的电脑上 正常加载
在我的电脑上就 蓝屏了,
问一下大家 问题怎么解决呢?
还有 我贴一下我自己写的代码
大神看看有没有错误

头文件:


#include <ntddk.h>
#include <windef.h>

void UnloadDriver(PDRIVER_OBJECT pDriver);

ULONG Old_SSDT,Current_SSDT;
LONG *SSDT_Addr,STB_Addr,OpenProcess_Addr;

typedef struct JMPDATE
{
BYTE E9;
ULONG JmpAddr;

}JMPDATE;
JMPDATE JmpDate;

typedef struct SSDT
{
PVOID ServiceTableBase;
PVOID ServiceCounterTable;
unsigned int NumberofServices;
PVOID ParamTableBase;
}*pSSDT;
pSSDT pKeSSDT;

ULONG Get_Old_SSDTAddr()
{
UNICODE_STRING Old_NtOpenProcess;
ULONG Old_SSDTAddr;
RtlInitUnicodeString(&Old_NtOpenProcess,"NtOpenProcess");
Old_SSDTAddr=(ULONG)MmGetSystemRoutineAddress(&Old_NtOpenProcess);
return Old_SSDTAddr;
}
LONG Get_Current_SSDTAddr()
{
STB_Addr=(LONG)pKeSSDT->ServiceTableBase;
SSDT_Addr=(PLONG)(STB_Addr+0x7A*4);
OpenProcess_Addr=*SSDT_Addr;
return OpenProcess_Addr;
}

源文件:

#include "PassDNFDriver.h"

//入口函数
NTSTATUS DriverEntry(PDRIVER_OBJECT pDriver,PUNICODE_STRING pstr)
{
DbgPrint("Loading【过DNF驱动保护(By:吴佳泽)】\n\r");
//加载驱动
__asm
{
int 3
}

DbgPrint("OpenProcess的当前地址为:%x \n\r" ,Get_Current_SSDTAddr());

//if (Current_SSDT!=Old_SSDT)
//{
// DbgPrint("OpenProcess已被【TP】Hook!");
// JmpDate.JmpAddr=Old_SSDT-Current_SSDT-5;
//}

pDriver->DriverUnload=UnloadDriver;
return 1;
}
void UnloadDriver(PDRIVER_OBJECT pDriver)
{
DbgPrint("UnLoad【过DNF驱动保护(By:吴佳泽)】\n\r");
//卸载驱动
}


求各位大神了!
你们就是我的希望啊!!!
...全文
160 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
曹大夯 2014-02-10
  • 打赏
  • 举报
回复
引用 楼主 qq1161142536 的回复:
//加载驱动
__asm
{
int 3
}
就冲这行代码,如果不挂接内核调试器的话就会蓝屏的。
huabinsir 2014-02-10
  • 打赏
  • 举报
回复
别人的系统和你的系统 SDK 版本是一样的吗
最近有人说下不了,我看了一下,能下载,多尝试几次~!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 找来一个很有用的声卡驱动解决方案,是我尝试了n次(不下20)还搭上某人的辛苦劳动,才成功让我的Win7发出声音的!!!以下是引用本站“实话实说”的博客。。。 你看到这篇文章时候估计你快被windows7无法安装声卡驱动而崩溃了,呵呵,别急,这篇文章是你的救星,本人已经试验多台电脑,完美解决windows7声卡驱动安装失败这一问题 有个前提,你已经有适合自己机子声卡驱动就是总是安装失败,若没有声卡驱动可以用驱动人生(或者其他驱动检测设备)检测并下载适合自己的驱动以备下一步使用。 闲话少说,正文: 1.先下载解压 windows7声卡驱动修复 压缩包。 2.打开你系统的所在盘进入Windows-system32-Driverstore-FileRepository在里面找到wdmaudio.inf_x86_neutral_aed2a4456700dfde文件夹. 一个一个慢慢找吧别着急. 4.再进入(wdmaudio.inf_x86_neutral_aed2a4456700dfde)文件夹把里面的东西全删了(删不掉,因为需要管理员权限 ,用windows7 优化大师 -->系统设置--->又键设置--->获取管理员权限(文件\文件夹)--应用到系统,然后对删不掉的文件点右键 --获取管理员权限---删除) 5.回到你刚刚解压的文件夹 6.把里面文件全部复制粘贴到wdmaudio.inf……文件夹里面 7.重新安装声卡驱动. 8.重启ok 问题解决了 如果没有WIN7驱动程序,用vista的也可以

21,619

社区成员

发帖
与我相关
我的任务
社区描述
硬件/嵌入开发 驱动开发/核心开发
社区管理员
  • 驱动开发/核心开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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