daniel
驱动牛犊
驱动牛犊
  • 注册日期2001-06-11
  • 最后登录
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
阅读:1480回复:2

为什么会蓝屏(0DH)???帮帮忙!

楼主#
更多 发布于:2001-08-03 21:55
请帮我看看这段程序为什么会产生0DH错误。我想用它来得到CR3的内容。

  .386
.model flat,stdcall
option casemap:none
include \masm32\include\windows.inc
include \masm32\include\kernel32.inc
includelib \masm32\lib\kernel32.lib
include \masm32\include\user32.inc
includelib\masm32\lib\user32.lib

.data
HookExceptionNumber equ 3
OldException dd 0
IDTR_1 db 6 dup(0)
GetCR3 dd 0
       db NULL
MsgBoxCaption db "Display CR3 Register",0    
.code
start:

sidt IDTR_1
mov eax,dword ptr IDTR_1+02h
add eax,HookExceptionNumber*8+04h

cli

mov ecx,eax
mov cx,word ptr [eax-04h]
mov dword ptr OldException,eax

lea ecx,MyHookFuction
mov [eax-04h],cx
shr ecx,16
mov [eax+02h],cx

int HookExceptionNumber

MyHookFuction PROC
   mov edx,CR3
   mov GetCR3,edx
   iretd
MyHookFuction ENDP

mov ecx,dword ptr OldException
mov word ptr[eax-04h],cx
shr ecx,16
mov word ptr[eax+02h],cx

sti

invoke MessageBox,NULL,addr GetCR3,addr MsgBoxCaption,MB_OK
invoke ExitProcess,NULL

end start    
winter
驱动小牛
驱动小牛
  • 注册日期2001-03-23
  • 最后登录2013-08-15
  • 粉丝4
  • 关注0
  • 积分5分
  • 威望40点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2001-08-03 22:58
这未免有些太痛苦了吧,你最好先说说你这段程序的来源,再说说你的系统,用的工具……
我声明,即使你说了这些我也不知道是怎么回事,但是我想可以更容易让知道的人帮你。一个建议而已。
请原谅我的无知与直率
daniel
驱动牛犊
驱动牛犊
  • 注册日期2001-06-11
  • 最后登录
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2001-08-04 11:31
来源:我自己写的。
编译器:QEDITOR
平台:WIN98
目前的问题:关键是我不知道如何用SOFTICE加载这个程序。所以我 也没有办法动态调试:(
游客

返回顶部