全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:1266
推到 Plurk!
推到 Facebook!

請問一下~要怎麼讀取記憶體中Offset的數值

尚未結案
lirick2003
一般會員


發表:17
回覆:16
積分:11
註冊:2007-02-23

發送簡訊給我
#1 引用回覆 回覆 發表時間:2008-08-03 12:56:02 IP:210.64.xxx.xxx 訂閱
請問一下~要怎麼讀取記憶體中Offset的數值

請問要怎麼去讀取offset的值?

不知道這樣問題出在哪裡,這樣好像不對~
還是說不能這樣讀
[code delphi]
procedure TMainForm.OffsetATimer(Sender: TObject);
var address,address2,addressoff: dword;
processhandle: thandle;
read,realvalue: dword;
check: boolean;
ProcessID:DWORD;
Process:THandle;
begin
hCurrentWindow := Findwindow(nil, PChar('ABCDE'));
if hCurrentWindow <> 0 then begin
GetWindowThreadProcessID(hCurrentWindow,ProcessID) ;
Process:=OpenProcess(PROCESS_SET_INFORMATION,false,ProcessID);
if Process <> 0 then
begin
address:=($009443A4);//紅點位址
addressoff:=($18);//指針

check:=readprocessmemory(processhandle,pointer(address),@address2,4,read);
check:=readprocessmemory(processhandle,pointer(address2 addressoff),@realvalue,4,read);
RedValue.Caption:=IntToStr(realvalue);//RedValue.Caption=RedV.Text
end;
end;
end;


[/code]
roviury
一般會員


發表:3
回覆:49
積分:15
註冊:2008-08-28

發送簡訊給我
#2 引用回覆 回覆 發表時間:2008-08-28 14:04:52 IP:203.186.xxx.xxx 訂閱

===================引 用 lirick2003 文 章===================
請問一下~要怎麼讀取記憶體中Offset的數值

請問要怎麼去讀取offset的值?

不知道這樣問題出在哪裡,這樣好像不對~
還是說不能這樣讀
[code delphi]
procedure TMainForm.OffsetATimer(Sender: TObject);
var address,address2,addressoff: dword;
processhandle: thandle;
read,realvalue: dword;
check: boolean;
ProcessID:DWORD;
Process:THandle;
begin
hCurrentWindow := Findwindow(nil, PChar('ABCDE'));
if hCurrentWindow <> 0 then begin
GetWindowThreadProcessID(hCurrentWindow,ProcessID) ;
Process:=OpenProcess(PROCESS_SET_INFORMATION,false,ProcessID);
if Process <> 0 then
begin
address:=($009443A4);//紅點位址
addressoff:=($18);//指針

check:=readprocessmemory(processhandle,pointer(address),@address2,4,read);
check:=readprocessmemory(processhandle,pointer(address2 addressoff),@realvalue,4,read);
RedValue.Caption:=IntToStr(realvalue);//RedValue.Caption=RedV.Text
end;
end;
end;


[/code]
processhandle=0
你為何可以執行??
lirick2003
一般會員


發表:17
回覆:16
積分:11
註冊:2007-02-23

發送簡訊給我
#3 引用回覆 回覆 發表時間:2008-08-28 21:12:18 IP:203.70.xxx.xxx 訂閱

===================引 用 roviury 文 章===================

===================引 用 lirick2003 文 章===================
請問一下~要怎麼讀取記憶體中Offset的數值

請問要怎麼去讀取offset的值?

不知道這樣問題出在哪裡,這樣好像不對~
還是說不能這樣讀
[code delphi]
procedure TMainForm.OffsetATimer(Sender: TObject);
var address,address2,addressoff: dword;
processhandle: thandle;
read,realvalue: dword;
check: boolean;
ProcessID:DWORD;
Process:THandle;
begin
hCurrentWindow := Findwindow(nil, PChar('ABCDE'));
if hCurrentWindow <> 0 then begin
GetWindowThreadProcessID(hCurrentWindow,ProcessID) ;
Process:=OpenProcess(PROCESS_SET_INFORMATION,false,ProcessID);
if Process <> 0 then
begin
address:=($009443A4);//紅點位址
addressoff:=($18);//指針

check:=readprocessmemory(processhandle,pointer(address),@address2,4,read);
check:=readprocessmemory(processhandle,pointer(address2 addressoff),@realvalue,4,read);
RedValue.Caption:=IntToStr(realvalue);//RedValue.Caption=RedV.Text
end;
end;
end;


[/code]
processhandle=0
你為何可以執行??

那麼是不是改成
check:=readprocessmemory(Process,pointer(address),@address2,4,read);
check:=readprocessmemory(Process,pointer(address2 addressoff),@realvalue,4,read);
roviury
一般會員


發表:3
回覆:49
積分:15
註冊:2008-08-28

發送簡訊給我
#4 引用回覆 回覆 發表時間:2008-08-29 08:48:58 IP:203.186.xxx.xxx 訂閱
不如你說說那一行出現問題吧..
你的代碼沒有問題..
===================引 用 lirick2003 文 章===================

===================引 用 roviury 文 章===================

===================引 用 lirick2003 文 章===================
請問一下~要怎麼讀取記憶體中Offset的數值

請問要怎麼去讀取offset的值?

不知道這樣問題出在哪裡,這樣好像不對~
還是說不能這樣讀
[code delphi]
procedure TMainForm.OffsetATimer(Sender: TObject);
var address,address2,addressoff: dword;
processhandle: thandle;
read,realvalue: dword;
check: boolean;
ProcessID:DWORD;
Process:THandle;
begin
hCurrentWindow := Findwindow(nil, PChar('ABCDE'));
if hCurrentWindow <> 0 then begin
GetWindowThreadProcessID(hCurrentWindow,ProcessID) ;
Process:=OpenProcess(PROCESS_SET_INFORMATION,false,ProcessID);
if Process <> 0 then
begin
address:=($009443A4);//紅點位址
addressoff:=($18);//指針

check:=readprocessmemory(processhandle,pointer(address),@address2,4,read);
check:=readprocessmemory(processhandle,pointer(address2 addressoff),@realvalue,4,read);
RedValue.Caption:=IntToStr(realvalue);//RedValue.Caption=RedV.Text
end;
end;
end;


[/code]
processhandle=0
你為何可以執行??

那麼是不是改成
check:=readprocessmemory(Process,pointer(address),@address2,4,read);
check:=readprocessmemory(Process,pointer(address2 addressoff),@realvalue,4,read);
系統時間:2024-05-03 0:39:35
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!