Ĺadny brzuch
W jaki najprostszy sposób mógłbym zmienić wartość adressu w pamięci?
np. mam programik, który np. w polu ma wpisaną wartość 120, powiedzmy, że w memory wygląda to tak:
Address: 053D62C8
Value: 120
i teraz w jaki sposób mogę zmienić ze 120 na np. 130? Coś z WriteProcessMemory trzeba kombinować?
Przybliży mi ktoś jak to wygląda? i jakie dane są mi potrzebne do zmiany tej wartości ze 120 do 130? handle także się przyda? jakie jeszcze zmienne?
Będę wdzięczny za wszelką pomoc
hOkno := FindWindow( PChar(Klasa), PChar(Tytul) ); Wartosc := 130; if IsWindow(hOkno) then begin GetWindowThreadProcessId(hOkno, idProces); hProces := OpenProcess(PROCESS_VM_WRITE or PROCESS_VM_READ or PROCESS_VM_OPERATION, False, idProces); WriteProcessMemory(hProces, Pointer($053D62C8), @Wartosc, SizeOf(Wartosc), NOBW); CloseHandle(hProces); end;
Argument NOBW (lpNumberOfBytesWritten) jest typu Cardinal
Użytkownik wasmaro edytował ten post 04 maj 2008, 10:59
zanotowane.pl doc.pisz.pl pdf.pisz.pl zsf.htw.pl
np. mam programik, który np. w polu ma wpisaną wartość 120, powiedzmy, że w memory wygląda to tak:
Address: 053D62C8
Value: 120
i teraz w jaki sposób mogę zmienić ze 120 na np. 130? Coś z WriteProcessMemory trzeba kombinować?
Przybliży mi ktoś jak to wygląda? i jakie dane są mi potrzebne do zmiany tej wartości ze 120 do 130? handle także się przyda? jakie jeszcze zmienne?
Będę wdzięczny za wszelką pomoc
hOkno := FindWindow( PChar(Klasa), PChar(Tytul) ); Wartosc := 130; if IsWindow(hOkno) then begin GetWindowThreadProcessId(hOkno, idProces); hProces := OpenProcess(PROCESS_VM_WRITE or PROCESS_VM_READ or PROCESS_VM_OPERATION, False, idProces); WriteProcessMemory(hProces, Pointer($053D62C8), @Wartosc, SizeOf(Wartosc), NOBW); CloseHandle(hProces); end;
Argument NOBW (lpNumberOfBytesWritten) jest typu Cardinal
Użytkownik wasmaro edytował ten post 04 maj 2008, 10:59