[Previous] [Next]

Компиляция и сборка драйвера Example.sys

Компиляция и сборка отладочной версии драйвера в среде Visual Studio 7 Net требует выбора пункта меню Rebuild Solution, после чего будет выполнена компиляция и сборка драйвера, а результат (в соответствии с настройками Example.sln и Example.vcproj) будет размещен в поддиректории .\checked.

Для компиляции и сборки драйвера утилитой Build пакета DDK потребуется создать два файла описания проекта — Makefile и Sources.

Файл Makefile

Этот файл управляет работой программы Build и в нашем случае имеет стандартный вид (его можно найти практически в любой директории примеров DDK), а именно:

# Файл Makefile
#
# DO NOT EDIT THIS FILE!!! Edit .\sources. if you want to add a new source
# file to this component. This file merely indirects to the real make file
# that is shared by all the driver components of the Windows NT DDK
#

!INCLUDE $(NTMAKEENV)\makefile.def

Файл Sources

Файл sources отражает индивидуальные настройки процесса компиляции и сборки. В нашем случае файл Sources чрезвычайно прост и имеет вид:

# Файл Sources
TARGETNAME=Example
TARGETTYPE=DRIVER
#DRIVERTYPE=WDM
TARGETPATH=obj
SOURCES=init.cpp

Данный файл задает имя выходного файла Example. Поскольку проект (TARGETTYPE) имеет тип DRIVER, то выходной файл будет иметь расширение .sys. Промежуточные файлы будут размещены во вложенной директории .\obj. Строка SOURCES задает единственный файл с исходным текстом — это файл init.cpp.

Если бы мы выполняли компиляцию и сборку WDM драйвера, то нужно было бы в тексте Driver.h использовать #include "wdm.h" (взять определения из заголовочного файла "wdm.h" вместо "ntddk.h"), а в данном файле Sources — удалить символ '#' (который вводит строку-комментарий) в первой позиции третьей строки. После этого строка
DRIVERTYPE=WDM
стала бы указывать утилите Build на то, что выполняется компиляция и сборка WDM драйвера.

Компиляция и сборка при помощи утилиты Build

Разместим для определенности все файлы (нам понадобятся файлы init.cpp, Driver.h, Makefile и sources) в директорию C:\Example. После этого процесс компиляции и сборки checked (отладочной) версии драйвера при помощи утилиты Build пакета DDK полностью описывается во 2 главе ("Компиляция и сборка драйвера утилитой Build пакета DDK").

Результат сборки можно будет найти в поддиректории .\objchk_w2k\i386 (поскольку используются настройки переменных среды сборки под Windows 2000).