【发布时间】:2016-12-07 16:23:31
【问题描述】:
我需要一些帮助,我正在编写一个 dll 来修改应用程序中的某些值。但如果我冻结价值应用程序崩溃(一段时间后停止工作)。
这是我的代码: 在这里我创建一个更新地址的线程:
CreateThread(nil, 0, @UpdateAddr, Pointer(nil), 0, rodaid)
这里是函数UpdateAddr:
procedure UpdateAddr;
var
BytesWrite: DWORD;
buf: Cardinal;
begin
while true do
begin
buf := Random(38);
WriteProcessMemory(ProcessH, SpeedAddr, addr(buf), sizeof(buf), BytesWrite);
end;
end;
这里是我如何打开进程:
ProcessH := OpenProcess (PROCESS_ALL_ACCESS, False, ProcessId);
由于任何原因,我不知道应用程序在创建线程一段时间后崩溃。
有人可以帮助我吗?
【问题讨论】:
标签: multithreading delphi