ho capito che la mia versione di ottenere il corretto baseaddress
era sbagliatoTrovare la giusta baseaddress
Process[] iexp = Process.GetProcessesByName("Solitaire");
if (iexp.Length == 0) {
//EXIT
}
Process internet = iexp[0];
uint baseAddress = (uint)internet.MainModule.BaseAddress.ToInt64();
ma il baseaddress
è sbagliato
Ho anche guardato in MSDN ma this codice è molto strano e mi ha un dà ciclo infinito.
Spero che tu possa aiutarmi perché non riesco a trovare alcun esempio.
EDIT:
ReadProcessMemory(readHandle, ((IntPtr)(((baseAddress) + 0x14) + 0x50)), bytes, (UIntPtr)4, ref rw);
Qui ho fatto un'immagine del mio desktop. Sono davvero confuso, forse qualcuno sa dove ho fatto un errore. http://i.stack.imgur.com/50lva.jpg
Come fai a sapere questo è il ritorno l'indirizzo di base sbagliato? Il codice che hai collegato sembra ragionevole per me ... –