• VS2013入门驱动配置测试


    准备工作:
      VS2013
      WDK8.1
      DbgView
      InstDrv

    VS2013+WDK8.1是绝配,意思是这两个版本结合最方便,安装后无需任何改动直接写代码,自动生成模板,省去了设置一些参数繁琐的工作。

    安装完成后新建一个驱动项目:

    写入测试代码:

     1 #include <ntddk.h>
     2 
     3 VOID DDK_UnLoad(PDRIVER_OBJECT DriverObject);
     4 
     5 NTSTATUS DriverEntry(PDRIVER_OBJECT DriverObject, PUNICODE_STRING RegistrPath)
     6 {
     7     NTSTATUS status = STATUS_SUCCESS;
     8     KdPrint(("Hello Driver,Hello BiaoGe!
    "));
     9     DriverObject->DriverUnload = DDK_UnLoad;
    10     return status;
    11 }
    12 
    13 VOID DDK_UnLoad(PDRIVER_OBJECT DriverObject)
    14 {
    15     KdPrint(("BiaoGe Driver Unload ---
    "));
    16 }

    想让这代码直接编译通过的话,应该降低警告等级至Level3,因为有些参数需要声明,但并未使用。

    好,可以生成驱动文件了。

    使用DbgView查看驱动输出

    为了方便,只捕获我们需要的消息,如下设置:
    勾选其捕获内核 Capture -> Capture Kernel
    勾选其开启内核输出 Capture -> Enable Verbose Kernel Output
    勾选其捕获事件 Capture -> Capture Events

    借助InstDrv工具加载驱动

    将编译好的驱动文件拖拽至InstDrv
    安装驱动
    此时应开着DbgView准备捕获,然后启动驱动,返回DbgView查看输出消息
    启动成功,消息输出成功
    停止驱动,返回DbgView查看输出消息
    停止成功,消息输出成功
    卸载驱动,卸载成功

    我们模拟了从驱动安装到驱动卸载的全过程,都是成功的。

  • 相关阅读:
    JavaScript constructor prototyoe
    bootstrap固定响应式导航
    跨浏览器事件处理程序
    原生JS实现字符串分割
    关于css里的class和id
    js动态创建表格方法
    关于css的默认宽度
    js字符串大小写转换
    C++类的一个重要成员:静态成员(二)——静态成员的定义
    C++ 类的一个重要成员:静态成员(一)
  • 原文地址:https://www.cnblogs.com/biaoge140/p/9382667.html
Copyright © 2020-2023  润新知