zoukankan      html  css  js  c++  java
  • 第一个驱动程序

    环境搭建:

    开发环境 对应版本 官方声明能支持的系统版本
    vs2017 WDK 10 win7、win8、win8.1、win10
    • 打开VS新建工程时会有驱动开发选项,建好项目后选择编译哪个版本的驱动程序

    • 第一个程序
    #include<ntddk.h>
    
    VOID DriverUnload(PDRIVER_OBJECT driver)
    {
    UNREFERENCED_PARAMETER(driver);
    DbgPrint("卸载"); // kdprint也可以
    }
    
    // 入口函数
    NTSTATUS DriverEntry(PDRIVER_OBJECT driver, // 驱动对象
    PUNICODE_STRING path) // 路径
    {
    UNREFERENCED_PARAMETER(path);
    DbgPrint("First Driver");
    __asm int 3
    driver->DriverUnload = DriverUnload;
    return STATUS_SUCCESS;
    }
    • 开始编译

    驱动程序的编译要求比较高,但实际上并不需要这样,可以将编译的等级降低,则能够直接编译成功

    由于是在32位Windows7的虚拟机中运行,所以配置如下:

    修改1:

    修改2:

    修改3:

    • 环境配置完成生成程序,将程序放入调试的虚拟机中,双机调试。使用加载器加载编写好的驱动程序,如果需要调试程序,在驱动程序中下断点需要手动的在行中间加上

    __asm int 3 断点,启动之后程序就在断点出中断。

  • 相关阅读:
    mybatis之关联关系映射
    spa项目开发之tab页实现
    mybatis整合redis实现二级缓存
    mybatis整合spring
    mybatis动态sql和分页
    Mybatis入门
    使用java代码操作redis
    Redis安装
    IDEA的安装和使用
    Linux入门——安装jdk、tomcat、MySQL以及项目部署
  • 原文地址:https://www.cnblogs.com/TJTO/p/11421282.html
Copyright © 2011-2022 走看看