ReadProcessMemory问题(100分)

  • 主题发起人 主题发起人 东门飚血
  • 开始时间 开始时间

东门飚血

Unregistered / Unconfirmed
GUEST, unregistred user!
我的代码:<br>-------------<br>function readmem(memmap:integer;nsize:dword):integer;<br>var<br>tempbuffer:pbyte;<br>lpnumberofbytesWritten:dword;<br>begin<br>if isopen=true then<br>begin<br>tempbuffer:=AllocMem(4);<br>ReadProcessMemory(hprocess,pointer(memmap),tempbuffer,nsize,lpNumberOfByteswritten);<br>result:=tempBuffer^;<br>end<br>else<br>result:=-1;<br>end;<br>-----------------------------<br>当我调用时.readmem($011e1478,2);<br>我想读取二个字节的内容,但是只返回了一个字节的内容,这是为什么呢?[:(][:(]<br>
 
你自己看看这个帖子:<br>http://www.delphibbs.com/delphibbs/dispq.asp?lid=283429
 
看看你的定义,Result是Integer可是Result := TempBuffer^,???如果想把它作为<br>一个整数返回用Result := PInteger(TempBuffer)^;<br>var<br>tempbuffer:pbyte;
 
哦,呵呵.
 
不行,还是不行,现在更怪了.一会儿读出的数据正确,一会儿什么也读不出!
 
后退
顶部