Ⅰ. はじめに
タイトルの通り「Windows Kernel Driver で HelloWorld する方法」です。
この記事では Kernel-Mode Driver Framework (KMDF) を利用した場合の例を記事内容とします。
Ⅱ. やり方
1. Windows Driver Kit(WDK) をインストールする
https://docs.microsoft.com/en-us/windows-hardware/drivers/download-the-wdk
2. Kernel Mode Driver, Empty(KMDF) の新規プロジェクトを作成する
3. サンプルプログラムを書く
Source.cpp
#include <ntddk.h> extern "C" NTSTATUS DriverEntry(PDRIVER_OBJECT DriverObject, PUNICODE_STRING RegistryPath) { UNREFERENCED_PARAMETER(DriverObject); UNREFERENCED_PARAMETER(RegistryPath); DbgPrint("Hello, World!"); return STATUS_SUCCESS; }
4. 実行する
sc create DriverTest binPath=c:\DriverTest.sys type=kernel sc start DriverTest
実行結果
FAQ
Q. 以下のメッセージが表示され、ドライバの実行ができない
このファイルのデジタル署名を確認できませんでした。 最近のハードウェアやソフトウェアの変更により、不正確に署名されたファイルか壊れたファイルがインストールされたか、 または不明なところから悪意のあるソフトウェアがインストールされた可能性があります。
A. 以下の記事を参考に、Windowsをテストモードとして起動してください
https://kagasu.hatenablog.com/entry/2019/12/29/131215
また、以下の記事の方法でも可能です
https://kagasu.hatenablog.com/entry/2019/12/29/141220