此版本较0.01预览版已经有了脱胎换骨的变化,主要表现在以下几个方面:
1.对程序的结构进行了调整,将原来的ntutils.dcu分成fcall.dcu、halfcall.dcu和macros.dcu三个单元,分别对应ntoskrnl.exe、hal.dll以及DDK中的宏定义,虽然麻烦了点儿,不过结构应该更清晰了;
2.新增加winioctrl.dcu和native.dcu两个单元,分别对应I/O控制和windows未公开的一些常量、结构说明;
3.使用新的方法全新生成的ntutils.lib静态库,可保证最终生成的驱动程序里不包含任何无用代码,极大减小了驱动程序的体积;
4.工具包里的omf2coff其实就是ms link 7.0 ,之所以改个名字是为了方便大家使用其他版本的link程序。7.0版的link可以把omf格式的obj文件转换成coff格式,这样你就可以使用7.0以后的link了。不过用8.0版的link似乎不支持/DEBUG选项,会报错。
5.增加了我用BCB开发的工具rmcoff,可以把Delphi编译后的obj文件中无用的Finalization和initialization这些代码以及重复的符号从obj文件里删除,这样在编译时就再也不会出现符号重复定义以及符号未定义的错误了,链接时也就不再需要用/FORCE:MULTIPLE /FORCE:UNRESOLVED选项了,同时也使得最终生成的驱动程序体积进一步缩小。
下载:KmdKit4D001 KmdKit4D002