下面是NT驱动demo
#include "ntddk.h"
void MyUnload(PDRIVER_OBJECT pDriverObj);
NTSTATUS CreateDevice(PDRIVER_OBJECT pDriverObj);
NTSTATUS MyDispatchRoutin(PDEVICE_OBJECT pDevObj,PIRP pIrp);
extern "C" NTSTATUS DriverEntry(PDRIVER_OBJECT pDriverObj,
PUNICODE_STRING pRegPath)
{
UNREFERENCED_PARAMETER(pDriverObj);
UNREFERENCED_PARAMETER(pRegPath);
DbgPrint("Enter DriverEntry");
//注册其他调用函数入口
pDriverObj->DriverUnload=MyUnload;
pDriverObj->MajorFunction[IRP_MJ_CREATE]=MyDispatchRoutin;
pDriverObj->MajorFunction[IRP_MJ_CLOSE]=MyDispatchRoutin;
pDriverObj->MajorFunction[IRP_MJ_WRITE]=MyDispatchRoutin;
pDriverObj->MajorFunction[IRP_MJ_READ]=MyDispatchRoutin;
//创建DO
NTSTATUS status=0;
status=CreateDevice(pDriverObj);
DbgPrint("Enter DriverEntry E