DELPHI 如何取游戏基址的数值
写了一个注入游戏辅助,游戏人物小退时人物基址的数值是0,(游戏基址为4字节DWORD类型)如何取出他的值(注已经是基址没有偏移的)(我想让人物小退时时钟自动停止)我的代码如下,但人物小退后时钟没有停,导致游戏出错!请大大们指点下
Function pd:Integer ; //判断人物
var
a:PDWORD;
Begin
Try
Begin
a:=Pointer(Base);
Result := a^;
end;
except
Result := 0;
end;
end;
时钟事件
IF PD>0 then
begin
......
end; 你读取数值只读取了一次,时钟调用的是不是一直在调用这个数值而没有及时得到最新数值 类似这样子:
var
ProcessID: Thandle; //目标进程句柄
ReadByte: Dword;
ReadProcessMemory(ProcessID,Pointer(Base),@a,sizeof(a),ReadByte); //读取
ifa=0then //判断
begin
Timer1.Enabled := False; //计时器关
end; 如果是注入的,你的PD函数直接用指针读取游戏基址的数值,返回a的数值,但时钟事件不能那么写:
IF PD>0 then 这里的PD函数不能直接参与判断
你可以:
var
b : cardinal
begin
b := PD();
IF b>0 then
begin
……
end;
页:
[1]