| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 778 人关注过本帖
标题:Delphi写内存补丁如何写成偏移补丁,求大牛指点下啊
只看楼主 加入收藏
xinling998
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2011-2-19
收藏
 问题点数:0 回复次数:3 
Delphi写内存补丁如何写成偏移补丁,求大牛指点下啊
源程序如下:
unit Unit1;
interface
uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls;
type
  TForm1 = class(TForm)
    Button1: TButton;
    Label1: TLabel;
    procedure Button1Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;
var
  Form1: TForm1;
implementation
{$R *.dfm}
var
NewData : array[0..1] of byte = ($90,$90);
Bytesread : DWORD;
procedure TForm1.Button1Click(Sender: TObject);
var
hwin, pid: DWORD;
hprocess: DWORD;
begin
hwin := FindWindow(nil,'CM Test');
GetWindowThreadProcessId(hwin, pid);
hprocess := OpenProcess(PROCESS_ALL_ACCESS, False, pid);
if WriteProcessMemory(hProcess ,Pointer($004566EE),@newdata,2 ,BytesRead ) then        //指定地址004566EE
begin
CloseHandle(hProcess);
label1.Caption:='      指定目标已经K.O了 ';
end
else
begin
CloseHandle(hProcess);
label1.Caption:=' 指定目标不知道为啥失败了 ';
end;
end;
end.

按照上面的方法只能写固定的内存补丁,请问下有哪位大牛知道怎么取模块地址写偏移补丁吗
搜索更多相关主题的帖子: 内存 dfm procedure Windows private 
2013-04-17 22:43
xinling998
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2011-2-19
收藏
得分:0 
没人回答啊....
2013-04-17 23:19
xinling998
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2011-2-19
收藏
得分:0 
都没有人懂吗?
2013-04-18 12:38
wp231957
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:神界
等 级:贵宾
威 望:423
帖 子:13688
专家分:53332
注 册:2012-10-18
收藏
得分:0 
米分

DO IT YOURSELF !
2013-04-25 10:51
快速回复:Delphi写内存补丁如何写成偏移补丁,求大牛指点下啊
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.015236 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved