本文主要是介绍DDK Sources 文件语法,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
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 |
这篇关于DDK Sources 文件语法的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!