icerlau 发表于 2014-9-3 22:09:41

小甲鱼老师及各位神仙HELP,help!!!

procedure TForm1.btn3Click(Sender: TObject);
var
Num1: Cardinal;
processID1: Thandle;
ProcID1: Thandle;
Ghwnd: Thandle;
Ecxi: Cardinal;
//r_Name : Cardinal;
data1: array of Char;

const baseadr = $00f20d94;
begin
Ghwnd := FindWindow(nil, 'SRO_Client'); //获取窗口
if Ghwnd = 0 then
begin
ShowMessage('游戏未启动');
Application.Terminate();
end;
GetWindowThreadProcessId(Ghwnd, ProcID1); //进程ID
ProcessID1 := OpenProcess(PROCESS_ALL_ACCESS, False, ProcID1); // 进程句柄
if ProcessID1 = 0 then
begin
showMessage('无法打开线程');
Application.Terminate();
end;
ReadProcessMemory(ProcessID1, Pointer(baseadr),@ECXI,4,Num1);
ReadProcessMemory(processID1, Pointer(Ecxi+$114),@data1,23,Num1);
lbl5.Caption:= PChar(@data1);
CloseHandle(ProcessID1); //关闭进程句柄
end;
问题是: 如果游戏角色名字过长则caption显示乱码
比如当角色名字是1234567的时候能读全,完全正确
         如果角色名字是12345678的时候就不能读正确显示的是乱码。

aminghanhua 发表于 2014-9-5 15:13:24

通过小甲鱼老师认证http://bbs.fishc.com/forum.php?mod=viewthread&tid=51821&mobile=no
原来的Delphi群好像解散了,新建个 大家一起学习   争取做到有问必答。
群号:138156926
加群链接:http://jq.qq.com/?_wv=1027&k=OFAZ7G

icerlau 发表于 2014-9-6 18:49:05

没人加我啊
页: [1]
查看完整版本: 小甲鱼老师及各位神仙HELP,help!!!