<<时间有限 , 抛砖引玉>><br>用函数ReadProcessMemory 读另一个进程的内存,原形如下:<br>BOOL ReadProcessMemory(<br>HANDLE hProcess, // 被读取进程的句柄;<br>LPCVOID lpBaseAddress, // 读的起始地址;<br>LPVOID lpBuffer, // 存放读取数据缓冲区;<br>DWORD nSize, // 一次读取的字节数;<br>LPDWORD lpNumberOfBytesRead // 实际读取的字节数;<br>);<br>////////////////////////////////////////<br>type <br> lpREC=^lREC; <br> lREC=record <br> ls:array[0..20000] of LongWord <br>end; <br> Value1:=$44; <br> ReadProcessMemory(Application.Handle,Pointer(i),lpWord,80000,iRead); <br> For i:=0 to 2000 do<br> if lpWord.ls=Value1 then <br> ListBox1.Items.Add(inttohex(lpWord.ls,8)); <br> <br>上 面 的 范 例 可 以 一 次 读 取 20000个 LongWord然 后 进 行 比 较 然 后 在 ListBox1中 显 示 。