Ciao, devo fare un trainer per un gioco.
So le locazioni di memoria da cambiare, so il nome e l'Id del processo, ma non so come cambiarle con VBasic.
Es:
Poke 00441D1E - EB 04 90 90 90 90
Poke 00440F7D - EB 04 90 90 90 90
Voi avete un'idea?
Grazie
Ciao, devo fare un trainer per un gioco.
So le locazioni di memoria da cambiare, so il nome e l'Id del processo, ma non so come cambiarle con VBasic.
Es:
Poke 00441D1E - EB 04 90 90 90 90
Poke 00440F7D - EB 04 90 90 90 90
Voi avete un'idea?
Grazie
se hai le locazioni di memoria usa
nel primo parametro metti l'indirizzo di memoria da scriverecodice:Declare Sub CopyMemory Lib "kernel32" Alias "RtlMoveMemory" (pDst As Any, pSrc As Any, ByVal ByteLen As Long)
nel secondo il puntatore alla variabile contenente il valore da scrivere
nel terzo la lunghezza in byte del valore da scrivere
Vascello fantasma dei mentecatti nonchè baronetto della scara corona alcolica, piccolo spuccello di pezza dislessico e ubriaco- Colui che ha modificato l'orribile scritta - Gran Evacuatore Mentecatto - Tristo Mietitore Mentecatto chi usa uTonter danneggia anche te
Ottimo!
Ma il valore e l'indirizzo deve essere in Hex?
Come faccio a capire il valore da mettere nella lunghezza?
Esempio:
Poke 00441D1E - EB 04 90 90 90 90
Devo mettere:
CopyMemory(00441D1E,EB,1)
CopyMemory(00441D1F,04,1)
CopyMemory(00441D20,90,1)
CopyMemory(00441D21,90,1)
CopyMemory(00441D22,90,1)
CopyMemory(00441D23,90,1)
Solo che non capisco 2 cose:
La lunghezza come la calcolo?
Se il valore per locazione sono 2 cifre Hex, io in teoria metto 1 byte.. no?
Altrimenti come faccio capire la lunghezza?
E poi non capisco perchè di solito nei trainer bisogna specificare il processo.
Voglio dire, la locazione 00441D1E è sempre univoca o è la 00441D1E del processo Id: 014D ovvero pippo.exe ?
Se si come specifico il processo su cui voglio agire?
Grazie
up