使用Windows虚拟设备驱动程序(VxD)之2

http://tech.ddvip.com   2006年03月31日    社区交流

本文详细介绍使用Windows虚拟设备驱动程序(VxD)之2

  作。要获得有关这些功能的更多信息,请参阅有关资料。 

  十三、建立一个VxD 

  应该通过进行下列步骤来建立一个VxD: 

  1、创建VxD源文件并用32位平坦模式汇编器MASM.EXE(MASM 6.11以上——译者注)汇编源文件。 

  2、创建模块定义文件(DEF文件)并用32位平坦模式连接器LINK.EXE连接目标文件。按照常规,结果可执行文件应该有与VxD相同的文件名,文 

  件扩展名为VXD。 

  3、用MAPSYM.EXE为可执行文件创建调试信息。 

  VxD并不与Windows动态链接库兼容,基于Windows的应用程序并不能直接装载和使用VxD,然而,基于Win32的应用程序可以通过使用CreateFile 

  和DeviceIoControl函数装载动态装载的VxD和与之相互作用。VxD模块定义文件有以下格式: 

  LIBRARY VSAMPLED 

  DESCRIPTION 'VSAMPLED Device (Version 4.0)' 

  EXETYPE DEV386 

  SEGMENTS 

  _LTEXT PRELOAD NONDISCARDABLE 

  _LDATA PRELOAD NONDISCARDABLE 

  _ITEXT CLASS 'ICODE' DISCARDABLE 

  _IDATA CLASS 'ICODE' DISCARDABLE 

  _TEXT CLASS 'PCODE' NONDISCARDABLE 

  _DATA CLASS 'PCODE' NONDISCARDABLE 

  EXPORTS 

  VSAMPLED_DDB @1 

  LIBRARY语句必须指定一个与在已知设备描述块(DDB)中相同的VxD名字,EXPORT语句必须指定一个DDB的名字,在任何情况下,DDB引出序号都是1。 

责编:豆豆技术应用

正在加载评论...