我现在在用Delphi写一个小程序遇到一个问题,但Delphi版人气是在太差了,只有在这里发帖求助了:
我因某种特殊原因必须用ReadProcessMemory来读取别的程序的一个字符串的值,我通过Hook ExtTextoutW函数来得到这个变量的地址,我的替代函数是这样写的:
function MyExt(DC: HDC; X, Y: Integer; Options: Longint;
  Rect: PRect; Str: PWideChar; Count: Longint; Dx: PInteger): BOOL; stdcall;
  var
    crd:Cardinal;
begin
  ……
  if Str='100' then
  begin
    SendInfo(2,True,'Addr:',Integer(str));
    str:='llt';
  end;  ……
  end;
其中SendInfo是我自己写的一个函数,作用是把第3、4个参数发送给另一个用来接收数据的程序,这个接收数据的程序显示Addr:76AF72F0
我认为这个76AF72F0应该就是那个字符串的地址了,然后我用
ReadProcessMemory(processhandle,$76AF72F0,mypwidechar,3,dwsize);
来读取他的值(其中mypwidechar是一PwideChar变量,processhandle是正确的),但是读到的却并非我想要的内容,请问我这种取地址、读数据的方法对吗?