windows驅動入門 1

2021-06-20 12:52:19 字數 1523 閱讀 7416

1.搭建編譯環境

(1) 安裝編譯器:vc6.0或vc2003、vc2005等。

(2) 安裝驅動開發工具包ddk ( driver development kits )

下找到你要的目標平台。

注意:這裡的版本指的是將要執行你編譯的驅動的機器作業系統版本,與你自己現在執行作業系統版本無關。

2.編寫第乙個驅動

/* hello.c */

#include 

void

hellounload( in  pdriver_object driverobject )

ntstatus driverentry( in pdriver_object pdriverobject,

in punicode_string pregistrypath )

driverentry 驅動的入口函式,相當c中main函式。

dbgprint 輸出函式,相當c中printf函式。

driverunload:函式指標,指向驅動解除安裝函式,當驅動動態解除安裝的時候呼叫它釋放資源,有點像析構函式。

makefile檔案

!include $(ntmakeenv)/makefile.def

sources檔案

targetname=hello

targettype=driver

targetpath=obj

includes=

targetlibs=

sources=hello.c

編譯

(1) 開始/所以程式/develompent kits/ windows ddk 2600 / build environments /win 2k checked build environment

(2) 輸入build進行編譯。

(3)沒有任何問題的話,將在objckd/i386/下面生成乙個hello.sys,這就是驅動檔案。

3.驅動動態引導程式

#include 

#include 

int_cdecl main(

void)if

(hservice)

closeservicehandle(hscmanager);

}return0;}

4.執行驅動

(1).將hello.sys複製到c:/hello.sys

(2).執行檢視訊息工具dbgview.exe

(debug view)。

(3).執行驅動引導程式,載入hello.sys。

你將會在dbgview.exe程式中看到第一條輸出。

(4).在驅動引導程式上按任意鍵,解除安裝hello.sys驅動。

你將會在dbgview.exe程式中看到第二條輸出。

如下圖

windows驅動開發學習入門調研

公司專案中需要windows驅動的方面的工作。以前我也有興趣,只是沒有需求,也沒有深入,這個主要是沒有動力。這次公司有這個需求,我覺得有動力,可以向這個方向努力一下。那麼這就又開始對windows驅動開發先做一下初級階段的調研 windows驅動開發如何入門 wdk 環境搭建 vs2015 wdk1...

Windows核心驅動開發入門學習資料

windows核心驅動開發入門學習資料 一 書籍推薦 其他驅動開發相關書籍 二 原始碼學習 三 學習 看雪論壇 驅網 帆子核心驅動網 看雪kssd 一蓑煙雨 吾愛破解 debugman 四 其他資料 整理自看雪 驅動程式設計基礎 showthread.php?t 56631 通俗解析irp和i o裝...

Windows核心驅動開發入門學習資料

整理 一 書籍推薦 其他驅動開發相關書籍 二 原始碼學習 三 學習 看雪論壇 驅網 帆子核心驅動網 看雪kssd 一蓑煙雨 吾愛破解 debugman 四 其他資料 整理自看雪 驅動程式設計基礎 showthread.php?t 56631 通俗解析irp和i o裝置棧在核心程式中的作用 showt...