driverentry.cpp

来自「Programming the Microsoft Windows driver」· C++ 代码 · 共 39 行

CPP
39
字号
// Main program for bugcheck driver

// Copyright (C) 1999, 2000 by Walter Oney

// All rights reserved



#include "stddcls.h"

#include "driver.h"



KBUGCHECK_CALLBACK_RECORD bugrecord;

ULONG bugbuffer;



VOID BugcheckCallback(PULONG buffer, ULONG bufsize);



///////////////////////////////////////////////////////////////////////////////



#pragma PAGEDCODE



extern "C" NTSTATUS DriverEntry(IN PDRIVER_OBJECT DriverObject,

	IN PUNICODE_STRING RegistryPath)

	{							// DriverEntry



	// Register a bug-check callback routine



	KeInitializeCallbackRecord(&bugrecord);

	KeRegisterBugCheckCallback(&bugrecord, (PKBUGCHECK_CALLBACK_ROUTINE) BugcheckCallback,

		&bugbuffer, sizeof(bugbuffer), (PUCHAR) "BUGCHECK");



	// Cause a bug check



	KeBugCheckEx(0x1234, 0, 1, 2, 3);

	}							// DriverEntry



///////////////////////////////////////////////////////////////////////////////



#pragma LOCKEDCODE



VOID BugcheckCallback(PULONG buffer, ULONG bufsize)

	{							// BugcheckCallback

	*buffer = 42;

	}							// BugcheckCallback

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?