請問一下~要怎麼讀取記憶體中Offset的數值 |
尚未結案
|
lirick2003
一般會員 發表:17 回覆:16 積分:11 註冊:2007-02-23 發送簡訊給我 |
請問一下~要怎麼讀取記憶體中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 發送簡訊給我 |
===================引 用 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 發送簡訊給我 |
===================引 用 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 發送簡訊給我 |
不如你說說那一行出現問題吧..
你的代碼沒有問題.. ===================引 用 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); |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |