#include <ntddk.h>
void assert_test()
{
int* p = NULL;
ASSERT(p != NULL);
return;
}
void erroe_test()
{
int *p = NULL;
int i = 100;
__try
{
*p = 1;
}
__except (1)
{
KdPrint(("错误处理函数代码被执行"));
}
}
#define PAGEDCODE code_seg("PAGE")
#pragma PAGEDCODE
extern "C" NTSTATUS DriverEntry(PDRIVER_OBJECT pDriverObject, PUNICODE_STRING pUnicodeString)
{
KdPrint(("PNDGMCSY--加载"));
pDriverObject->DriverUnload = DDK_Unload;
CreateMyDevice(pDriverObject);
MemoryOpe();
pDriverObject->MajorFunction[IRP_MJ_CREATE] = ddk_DispatchRoutine;
pDriverObject->MajorFunction[IRP_MJ_CLOSE] = ddk_DispatchRoutine;
pDriverObject->MajorFunction[IRP_MJ_READ] = ddk_DispatchRoutine;
pDriverObject->MajorFunction[IRP_MJ_WRITE] = ddk_DispatchRoutine;
pDriverObject->MajorFunction[IRP_MJ_DEVICE_CONTROL] = ddk_DispatchRoutine;
GetPrint(SetNode());
erroe_test();
assert_test();
return 0;
}