一、创建回调函数,卸载驱动的时候会执行里面的操作

void 卸载驱动回调函数(PDRIVER_OBJECT 驱动对象)
{KdPrint(("nxyn:我被卸载了,驱动编号=%p", 驱动对象));
}

二、在主函数中调用该函数

extern "C" NTSTATUS DriverEntry(_In_ PDRIVER_OBJECT 驱动对象, _In_ PUNICODE_STRING psg)
{驱动对象->DriverUnload = 卸载驱动回调函数;KdPrint(("nxyn:第一个驱动程序,驱动编号:%p", 驱动对象));return 0;
}

三、生成驱动文件,拷贝到虚拟机进行测试

四、在DebugView中设置标识符"nxyn",只查看包含nxyn的输出语句

五、在Monitor中,导入该驱动程序,点击go,然后点击stop,查看输出效果

六、在DebugView中会显示,我们要输出的语句,说明驱动加载和卸载都没问题。

七、程序源码

#include <ntifs.h>void 卸载驱动回调函数(PDRIVER_OBJECT 驱动对象)
{KdPrint(("nxyn:我被卸载了,驱动编号=%p", 驱动对象));
}extern "C" NTSTATUS DriverEntry(_In_ PDRIVER_OBJECT 驱动对象, _In_ PUNICODE_STRING psg)
{驱动对象->DriverUnload = 卸载驱动回调函数;KdPrint(("nxyn:第一个驱动程序,驱动编号:%p", 驱动对象));return 0;
}

2023驱动保护学习 -- 卸载驱动程序相关推荐

  1. Windows驱动开发学习笔记(一)—— 环境配置第一个驱动程序

    Windows驱动开发学习笔记(一)-- 环境配置&第一个驱动程序 环境配置 第一个驱动程序 环境配置 安装VS2010:https://pan.baidu.com/s/1uZWWxCtB60 ...

  2. 计算机如何删除已连接的打印机驱动程序,hp打印机驱动怎么彻底卸载 hp打印机驱动卸载教程...

    很多用户在安装hp打印机驱动之后,发现安装好的驱动显示的是英文,当我们想要卸载换成中文的,发现卸载不了,这该怎么办呢?其实非常简单,下面小编为大家分享彻底卸载hp打印机驱动的方法,大家看完下面的方法就 ...

  3. Windows驱动开发学习笔记(五)—— SSDT HOOK

    Windows驱动开发学习笔记(五)-- SSDT HOOK 系统服务表 系统服务描述符表 实验一:通过代码获取SSDT表地址 通过页表基址修改页属性 方法1:修改页属性 方法2:修改CR0寄存器 实 ...

  4. 驱动保护中的ObjectType_Callback探索

    最近学习驱动保护,有点小小心德与大家分享下. 当前环境:VM中的win7 32 保护程序是某游戏的驱动保护. 具体现象是:在用PCHunter工具查看object钩子时发现如下的信息: 疑问点1:在H ...

  5. Windows驱动开发学习笔记(六)—— Inline HOOK

    Windows驱动开发学习笔记(六)-- Inline HOOK SSDT HOOK Inline Hook 挂钩 执行流程 脱钩 实验一:3环 Inline Hook 实验二:0环 Inline H ...

  6. Windows驱动开发学习笔记(四)—— 3环与0环通信(常规方式)

    Windows驱动开发学习笔记(四)-- 3环与0环通信(常规方式) 设备对象 创建设备对象 设置数据交互方式 创建符号链接 IRP与派遣函数 IRP的类型 其它类型的IRP 派遣函数 派遣函数注册位 ...

  7. Windows驱动开发学习笔记(三)—— 内核空间内核模块

    Windows驱动开发学习笔记(三)-- 内核空间&内核模块 内核空间 实验 第一步:编译如下代码 第二步:将 .sys 文件拷贝到虚拟机中 第三步:部署 .sys 文件并运行 第四步:创建一 ...

  8. Windows驱动开发学习笔记(二)—— 驱动调试内核编程基础

    Windows驱动开发学习笔记(二)-- 驱动调试&内核编程基础 基础知识 驱动调试 PDB(Program Debug Database) WinDbg 加载 PDB 实验:调试 .sys ...

  9. 日服巫术online过驱动保护分析(纯工具)(工具+自写驱动)

    前言: 最近在学外挂编程,基本都是利用CE,OD调试分析游戏数据,但现在游戏公司用各种保护手段防止我们调试游戏,虽然我们有CE,OD这样的利器但是仍然被游戏驱动保护挡在门外i,真可谓巧妇也难为无米之炊 ...

最新文章

  1. ML之SVM:基于Js代码利用SVM算法的实现根据Kaggle数据集预测泰坦尼克号生存人员
  2. r语言和metawin_Windows下使用Rtools编译R语言包
  3. bash 的进站欢迎提示
  4. JDBC与JNDI应用比较
  5. 《Nmap渗透测试指南》—第2章2.8节ICMP Ping Types扫描
  6. 怎样用js结合h5画出多头像组合头像
  7. 阶段3 2.Spring_03.Spring的 IOC 和 DI_7 spring中bean的细节之作用范围
  8. 自制的基Ogre的场景编辑器—OgreSE
  9. 汽车EMI/EMC测试标准ISO7637-2详解
  10. IEEE754十六进制转十进制
  11. 第2周 Storm概念详解和工作原理,topology、spout、bolt的细节和API讲解之2
  12. Waited long enough for: ServiceRecord 问题解决
  13. 嵌入式编程软件基础汇总1
  14. 【c++STL——第四讲】stack系列 (常用知识点总结)
  15. 华师大计算机考研825,2020华东师范大学计算机/软件专业课改考408
  16. 考研-英语经验贴2.0
  17. 若依框架图片上传、富文本框编辑器功能
  18. python怎么群发邮件_python群发邮件怎么做
  19. 金簿财务软件智能版3.985
  20. 高一数学知识点:逻辑联结词、全称量词与存在量词

热门文章

  1. Jmter接口测试:使用Json做post请求
  2. 【ansys】ansys workbench 网格划分错误-无法生成边界层/膨胀层,生成边界层失败
  3. spyder 下安装scrapy
  4. 2021年系统规划与管理师下午真题及答案解析
  5. Java对正则表达式的支持(手机、身份证校验)
  6. Android-动态权限申请代码
  7. Kettle入门操作处理excel数据
  8. 测试文档主要有哪些类型?
  9. 【电路】MOS管开关电路
  10. 【23年1月17日】基于Flask技术的全国气象数据采集及可视化分析系统,支持城市定制服务