TARGETLIBS
指定编译所需的静态库lib。只需要在Sources文件中加入该行,则在驱动中可调用生成的lib。
比如:
TARGETLIBS=$(SDK_LIB_PATH)/kernel32.lib /
$(SDK_LIB_PATH)/advapi32.lib /
$(SDK_LIB_PATH)/advapi32.lib /
TARGETLIBS=../Lib/SysDll.lib
TARGETPATHLIB
编译DLL类型的文件时,指定其对应的LIB所在的目录
TARGETNAME
TARGETPATHLIB=../../lib
TARGETPATHLIB=../../lib
定义驱动名,或DLL名字.
TARGETPATH
定义所有生成文件放置的目录.例如:
TARGETPATH=../../bin
TARGETTYPE
定义最终文件类型。当要创建一个Dll时,那么此类型值设置为LIBRARY或DYNLINK
值
|
定义
|
生成文件后缀
|
PROGRAM
|
应用层程序,不输出任何函数.
|
.EXE
|
PROGLIB
|
应用层程序,同时也有输出函数
|
.EXE
|
DYNLINK
|
动态库文件可以输出函数,
其它二进制文件可以引用这些函数,
标记这不是一个独立的.EXE文件.
|
.dll
|
LIBRARY
|
生成一个静态库,这个文件中包含了函数的内容,其它程序在静态LINK时把这些函数都编译进对应的文件.
当你要生成一个动态库时,同时也会生成一个LIB.
但当你想生成一个静态库时,那么只生成一个LIB文件.
|
.LIB
|
EXPORT_DRIVER
|
一个内核下的DLL,
相当于应用层的DLL,同时生成LIB文件
要有对应的DriverEntry函数
否则出错.
|
.Sys
|
DRIVER_LIBRARY
|
内核状态下的静态库,
包含了函数说明和代码.
相当于应用层的静态库
不能有DriverEntry函数,
否则在LINK时会出现DriverEntry重复的错误.
|
.Lib
|
DRIVER
|
驱动程序
|
.sys
|
MINIPORT
|
驱动程序但不连接
Ntoskrnl.lib或hal.lib
|
.sys
|
GDI_DRIVER
|
图像驱动程序
连接win32k.sys
|
.dll
|