CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
山寨机中的战斗机! 程序优化工程师到底对IT界有没有贡献
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  VC/MFC >  基础类

Win9x下如何修改BIOS中断向量处理 ?

楼主wmrwinhap(三棱镜)2002-03-20 09:04:42 在 VC/MFC / 基础类 提问

我想在   Windows9x   下实现"重载"BIOS中断,即先取得某中断向量处理的原入口地址,再编写一新函数,加入自已的处理,然后调用原处理。当该中断产生时,就会先调用我的处理,然后才进行原处理,也就是要实现标准C的   SetVector(中断号,新的处理函数)函数的功能。  
   
  这里有两个问题要解决,一是如何设置新的中断向量处理即如何实现SetVector;二是如何将函数的入口地址转换成物理地址以调用SetVector。  
   
  Windows9x可进入Ring0级,VC又可直接插入ASM代码,我想应该是可以实现的,望各位大侠鼎力相助。 问题点数:100、回复次数:5Top

1 楼strip(阿飞 - Mozilla●CSDN●痛)回复于 2002-03-20 09:06:24 得分 0

不觉得这个问题能够解决Top

2 楼DavidFan(anykey)回复于 2002-03-20 09:12:10 得分 50

网上有很多地方可下CIH的源代码,CIH源代码中,我记得好象是通过修改int   5进入ring0的,不过有一定的难度哦......Top

3 楼halcyon(让我们共同进步)回复于 2002-03-20 09:32:50 得分 50

同意UP,你要使用嵌入的汇编语言,特别是SIDT语句来中断向量表,其实代码不长,100行都不到吧。其实WINDOWS的很多功能都可以用钩子函数实现。Top

4 楼strip(阿飞 - Mozilla●CSDN●痛)回复于 2002-03-20 09:36:51 得分 0

CIH   ???  
   
  那是9x下的vxd  
   
  不像dos下那么简单SetVector了Top

5 楼wmrwinhap(三棱镜)回复于 2002-03-22 16:57:07 得分 0

to   halcyon:  
   
          我最想截获的中断是鼠标中断,加入自已的判断并在适当时候禁止鼠标移动与点击。  
          Windows9x的鼠标钩子太上层了,不象NT有   WH_MOUSE_LL   这种底层钩子,万般无奈,只好从底层动手了。  
          的确是要通过汇编指令SIDT读取中断向量表,还得在系统内存分配空间,将新的处理函数copy到系统内存区以保证其它进程产生中断时不死机……  
          你能帮我写写这个功能吗?我汇编基础太差,这个功能对我来说太复杂。分数不够再开窗口加一百两百分都可以的,在此多谢了!  
   
  Top

相关问题

  • 哪里有最完整的BIOS和DOS中断向量表????
  • 键盘的中断向量是多少?
  • 请求C语言中断处理资料(中断向量地址说明等)
  • 中断向量的问题?UP也给分.
  • 请问:9号中断向量起什么作用?
  • 有谁有中断向量表大全的,发给我,一定送分
  • 汇编试题二:今晚结帖!已知中断向量表如下:
  • 哪位大虾知道COM3、COM4的硬件中断号和对应的中断向量?
  • 已知计算机的硬件中断为IRQ12 IRQ15,他们的中断向量号怎么得到?
  • bios 中断 int 19h????

关键词

  • 中断
  • 函数
  • 鼠标
  • 向量
  • setvector
  • 处理
  • 钩子
  • 调用
  • cih
  • 实现

得分解答快速导航

  • 帖主:wmrwinhap
  • DavidFan
  • halcyon

相关链接

  • Visual C++类图书
  • Visual C++类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo