新建一個(gè)MFC DLL項(xiàng)目,設(shè)置項(xiàng)目屬性如下:
新建一個(gè)配置管理項(xiàng),my_driver_dev,編輯這個(gè)配置管理項(xiàng)!
需要事先說(shuō)明的是,下圖中加粗的地方就是需要修改的部分?。?!
配置流程如下:
1、C/C++
(1)“常規(guī)”

(2)“優(yōu)化”

(3)“預(yù)處理”

(4)“高級(jí)”

2、鏈接器
(1)“常規(guī)”

(2)“輸入”

(3)“清單文件”

(4)“調(diào)試”

(5)“系統(tǒng)”

(6)“高級(jí)”

3、示例程序
新建一個(gè)cpp文件,然后編譯!
#include <ntddk.h>
//提供一個(gè)Unload函數(shù)只是為了
VOID DriverUnload(PDRIVER_OBJECT driver)
{
// 但是實(shí)際上我們什么都不做,只打印一句話:
DbgPrint("first: Our driver is unloading…\r\n");
}
// DriverEntry,入口函數(shù)。相當(dāng)于main。
NTSTATUS DriverEntry(PDRIVER_OBJECT driver, PUNICODE_STRING reg_path)
{
#if DBG
// _asm int 3
#endif
// 這是我們的內(nèi)核模塊的入口,可以在這里寫(xiě)入我們想寫(xiě)的東西。
// 我在這里打印一句話。因?yàn)椤?span lang="EN-US">Hello,world”常常被高手恥笑,所以
// 我們打印一點(diǎn)別的。
DbgPrint("first: Hello, my wdk dirver!");
// 設(shè)置一個(gè)卸載函數(shù)便于這個(gè)函數(shù)能退出。
driver->DriverUnload = DriverUnload;
return STATUS_SUCCESS;
}