zoukankan      html  css  js  c++  java
  • windows驱动开发-HelloWorld驱动

    #include <ntddk.h>
    extern "C" VOID DriverUnload(IN PDRIVER_OBJECT pDriverObject);
    extern "C" NTSTATUS DispatchRoutine(PDEVICE_OBJECT pDevObj, PIRP pIrp);
    
    extern "C" NTSTATUS DriverEntry(PDRIVER_OBJECT pDriverObject, PUNICODE_STRING pRegistryPath)//驱动入口
    {
    	DbgPrint("DriverEntry
    ");
    
    	pDriverObject->DriverUnload = DriverUnload;//注册卸载函数
    	pDriverObject->MajorFunction[IRP_MJ_CREATE] = DispatchRoutine;//注册派遣函数
    	pDriverObject->MajorFunction[IRP_MJ_CLOSE] = DispatchRoutine;
    	pDriverObject->MajorFunction[IRP_MJ_WRITE] = DispatchRoutine;
    	pDriverObject->MajorFunction[IRP_MJ_READ] = DispatchRoutine;
    
    	return STATUS_SUCCESS;
    }
    
    extern "C" VOID DriverUnload(PDRIVER_OBJECT pDriverObject)
    {
    	DbgPrint("DriverUnload
    ");
    }
    
    extern "C" NTSTATUS DispatchRoutine(PDEVICE_OBJECT pDevObj, PIRP pIrp)
    {
    	NTSTATUS status = STATUS_SUCCESS;
    	pIrp->IoStatus.Status = status;
    	pIrp->IoStatus.Information = 0;
    	IoCompleteRequest(pIrp, IO_NO_INCREMENT);//完成IRP请求
    	return status;
    }
    
    起风了,努力生存
  • 相关阅读:
    类的继承和方法重写
    引用地址的变化
    Java中代码块执行顺序
    冒泡排序实现原理
    JSP九大内置对象
    SSH框架运行流程
    springboot + maven 整合SSM
    Maven创建项目,Index.jsp报错
    一些js在线引用文档
    excel出现虚线怎么去掉?
  • 原文地址:https://www.cnblogs.com/StivenYang/p/14449886.html
Copyright © 2011-2022 走看看