原来曾经见过有人用Delphi写,就是在CSDN上的一篇文章,找找看啦另外,VxD不是Borland做不到,而是MS没有授权给其他厂商可以生成此类格式的二进制文件

解决方案 »

  1.   

    可以。如果你要开发 Win9x 的 VxD 设备驱动程序,最好采用 Delphi 3 来写。因为 VxD 采用的是一种特殊的文件结构——线性可执行文件 LE 格式,这种格式必须采用微软的 Linker 才能生成。而只有 Delphi 3 编译产生的 Obj 文件可以被 MS Linker 识别,至于 Delphi 4/5 产生的 Obj 能不能被 MS Linker 识别我就不知道了,没试过。这方面的文章在“中国软件”的开发文档栏目里有,你找一找。问题是,你得先从微软网站下载 Win98 DDK,因为只有这里面的 MS Linker 可以产生 VxD。我做了一个小的 VxD,直接用 DOS 中断操作硬盘的,在过去的 DOS 时代很普通的。核心是用 Delphi 3 写的,使用了一个汇编语言编写的启动模块,然后用 MS Linker 连接而成的。纯粹是练手用的,没什么实用价值。现在一直没动过了。如果要开发 Win98/2000 的 WDM 驱动程序或者 WinNT 4.0 的驱动程序,则不存在这个限制了。因为 WDM 驱动和 NT 4.0 的驱动都采用的是 NT 的驱动内核结构,这是标准的 Win32 DLL 文件结构,结合其 DDK 采用 Delphi 2/3/4/5 都可以做的。
      

  2.   

    谢谢 Phoenix2000(Phoenix2000)
    长见识了!
      

  3.   

    谢谢BaldZhang,我再看看,我找不到给你加分的,在那呢?