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

5.增加了我用BCB开发的工具rmcoff,可以把Delphi编译后的obj文件中无用的Finalization和initialization这些代码以及重复的符号从obj文件里删除,这样在编译时就再也不会出现符号重复定义以及符号未定义的错误了,链接时也就不再需要用/FORCE:MULTIPLE /FORCE:UNRESOLVED选项了,同时也使得最终生成的驱动程序体积进一步缩小。
下载:KmdKit4D001 KmdKit4D002