首页
社区
课程
招聘
[求助][Delphi] 关于获取断点处寄存器内容的问题.
发表于: 2010-1-12 14:13 3531

[求助][Delphi] 关于获取断点处寄存器内容的问题.

2010-1-12 14:13
3531
---------------------------------------------------------------------
title:=findwindow(nil,'英语通 V1.8');
GetWindowThreadProcessId(title,@Pid);
ProcessHandle:=GetTHandle(pid);
ProcessHandle := OpenThread(ProcessHandle,false);
Context.ContextFlags:=CONTEXT_FULL;
GetThreadContext(ProcessHandle,Context);
Context.Dr0 := $0049F566;
Context.Dr7 := $401;
SetThreadContext(ProcessHandle,Context);
SuspendThread(ProcessHandle);
edit1.text:= inttostr(Context.Ebx);
resumethread(ProcessHandle);
CloseHandle(ProcessHandle);
---------------------------------------------------------------------

我不太懂DEBUG.

我的意思是: 让代码运行在$0049F566(Eip)中断,然后获取EBX寄存器的内容.

但是貌似EIP一直不会指向$0049F566,而且入口点那里.

例如我用OD, 在$0049F566处设置断点, 点运行, Eip马上会指向$0049F566,并显示各个寄存器内容.

请问各位大师, 如何设置某个位置的断点. 并让程序运行到那个断点时, 截取其他积存器内容.

有代码最好.

[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)

收藏
免费 0
支持
分享
最新回复 (0)
游客
登录 | 注册 方可回帖
返回
//