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

    Windows NT内核下的驱动通常称为KMD(Kernel-Mode Driver),下载并安装好DDK后,就可以编写KMD了。
    编写一个KMD至少需要notepad+ddk。DDK使用C语言编写,驱动的函数有一个新的名字,例程,实际上二者没有必要刻意区分
    一个KMD至少需要DriverEntry例程,和C语言中的main一样,DriverEntry是驱动程序的入口点,驱动程序加载时DriverEntry被调用。
    下面程序和hello world一样,向一个终端输出字符串。不同的是,hello world输出到stdout控制台,而hello kmd输出到系统调试器,有一个工具可以检测那就是dbgView,可以查看。打开dbgView程序,加载该这个驱动就可以看到输出了
    创建驱动很简单,在ddk程序菜单里面选择环境check/free,出现控制台窗口,cd到源文件目录,使用build 命令就可以了。注意源文件目录下有source和makefile文件。makefile文件可以从ddk任意一个例子里面拷贝过来
    source文件里面用如下内容,具体还可以在查阅DDK文档,了解宏的意思。
    TARGETNAME=hello 
    TARGETTYPE=DRIVER
    TARGETPATH=obj

    SOURCES= driver.c


    #include <ntddk.h>
    /*DriverEntry例程*/
    NTSTATUS DriverEntry(IN PDRIVER_OBJECT DriverObject,IN PUNICODE_STRING RegistryPath)
    {
        DbgPrint("hello kmd");
        return STATUS_SUCCESS;
    }
  • 相关阅读:
    Java使用POI操作Excel合并单元格
    LinkedList查询分析
    Redis面试题及答案
    分布式架构基础:Java RMI详解
    什么是线程
    ehcache、memcache、redis三大缓存比较
    ehcache入门基础示例
    js 异步提交文件
    .net core Model对象转换为uri网址参数形式
    net core2.1 在过滤器中获取post的body参数
  • 原文地址:https://www.cnblogs.com/iwasmu/p/1491794.html
Copyright © 2011-2022 走看看