我爱黑客网首页 设为首页
加入收藏
联系我们
 首 页  技术文章 下载中心 站长学院 交流论坛
 软件:
 文章:        教程:
 推荐: 我爱黑客网论坛
 
 
 
 
   
黑软: Q Q 软件 木马间谍 探嗅监听 溢出攻击 加密解密 漏洞扫描 脚本注入 远程控制 综合利用 聊天工具  
 
技术文章: 爱黑新闻 | 黑客攻防 | 网络技术 | 程序设计 | 系统操作 | 本站动态 | 业界动态 | 安全公告 | 病毒公告 | 八卦黑客
 
 
您当前的位置:我爱黑客 -> 程序设计 -> C++ -> C++系统 -> 文章内容  
栏目导航
· C++综合 · C++通信
· C++视图 · C++图象
· C++系统 · C++多媒体
· C++界面 · C++文件
· C++数据库 · C++网络
热门文章
· 10分钟完成一个USB驱动..
· 通过消息实现自定义输..
· 防止因系统崩溃而丢失..
· 文本框控件的消息及应..
· 获取信息的有关Window..
· 如何自动移去系统托盘..
· 读取其他应用程序中Li..
· 如何实现大图标风格的..
· BCB6/Delphi7下完美调..
· 虚拟设备驱动程序的设..
· 用游戏操纵杆摸拟鼠标..
· 如何读写硬件端口
相关文章

· 罗云彬VxD教程--虚拟..
· 罗云彬VxD教程--Dev..
· 罗云彬VxD教程--客户..
· 罗云彬VxD教程--请求..
· 罗云彬VxD教程--虚拟..
· 罗云彬VxD教程--虚拟..
· 罗云彬VxD教程--VxD..
· 罗云彬VxD教程--虚拟..
· 汇编教程之VxD程序设..
查看更多与罗云彬VxD教程--VxD 程序设计入门相关内容

罗云彬VxD教程--VxD 程序设计入门
作者:幽火  来源:www.5ihack.com  发布时间:2007-1-8 17:34:55  发布人:ghostfire

减小字体 增大字体

  We 我们在上一节学会了如何编写一个什么事也不做的VxD程序。在这一节里,我们要给它增加处理控制消息的功能。

  VxD的初始化和结束

  VxD程序分为两种:静态的和动态的。每种的加载方法都不同,接受到的初始化和结束的控制消息也不同。

  静态VxD:

  下列情况下,VMM加载一个静态VxD:

  一个实模式常驻程序通过调用中断2FH,1605H,来调用此VxD。

  此VxD在注册表中的如下位置有定义:

  HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\VxD\key\StaticVxD=VxD带路径文件名

  此VxD在system.ini中的[386enh]行下有定义:[386enh] section:

  device=VxD带路径文件名

  在开发的时候,我建议你从system.ini载入VxD程序,因为这样如果你的VxD程序有错而导致Windows不能启动的话,你可以在Dos下修改system.ini,而如果你使用的注册表载入的办法,就无法修改了。

  当VMM加载你的静态VxD程序时,你的VxD程序会按以下顺序接收到三个系统控制消息:

  Sys_Critical_Init VMM在转入到保护模式后,开放中断前发出这个控制消息。大多数VxD程序到不要用到这个消息,除非:

  你的VxD程序要接管一些其他VxD程序或者保护模式程序要用到的中断。既然你处理这个消息的时候这个中断还没有打开,你就可以确定在你接管这个中断的时候此中断不会被调用。

  你的VxD程序为其他的VxD程序提供了一些VxD服务。例如,一些在你的VxD程序后加载的VxD程序在处理Device_Init控制消息时需要调用一些你的VxD服务,既然Sys_Critical_Init 控制消息在Device_Init消息之前被发送,所以你应该在Sys_Critical_Init 消息发送时初始化你的程序。

  如果你要对这消息进行处理,你应该尽可能快的做完初始化工作,以免太长的执行时间导致的硬中断丢失。(记住:中断还没打开)

  Device_Init VMM在开放中断后发送此信息。大多数VxD程序都在得到这个消息时初始化。因为中断都开放了,所以耗时的操作也可以在这里执行而不必怕会导致硬中断的丢失。你可以在这时进行初始化(如果你需要的话)。

  Init_Complete 在所有的VxD程序处理完Device_Init 消息之后,VMM释放初始化段(ICODE和RCODE段类)之前,VMM发出这个控制消息。只有少数几个VxD要处理这个消息。

  你的VxD程序在成功地初始化后,必须将返回标志清零,反之,必须在返回之前把返回标志设为出错信息。如果你的VxD不需要初始化,你就不必对这些消息进行处理。

查看更多与罗云彬VxD教程--VxD 程序设计入门相关内容

[ ] [返回上一页] [打 印] [收 藏]
上一篇文章:
下一篇文章:
      使用Windows虚拟设备驱动程序(VxD)之1       罗云彬VxD教程--虚拟机管理器
∷相关文章评论∷   (评论内容只代表网友观点,与本站立场无关!) [发表评论]
 
 
 
 
晋ICP备05008232   维护网络安全、传播安全技术才是我们的目标! 
 
关于本站 - 网站帮助 - - 下载声明 - 友情连接 -网站地图