La dirección que encuentro con cheat-engine cambia cada vez que cierro y abro el programa.
Intente con este codigo:
DWORD processes[8000], total_size;
EnumProcesses(processes, sizeof(processes), &total_size);
for (int i = 0; i < sizeof(processes) / total_size; i++){
HANDLE process = OpenProcess(PROCESS_ALL_ACCESS, false, processes[i]);
if (process != NULL){
DWORD id = GetProcessId(process);
if (id == 5076){//Lo veo con tasklist (luego lo hago mejor)
int data = 200;
if (!WriteProcessMemory(process, (LPVOID)0X0113FE78, &data, 4, 0)){
cout << GetLastError();
}
else{
cout << "good";
}
}
}
}
Si encuentro la memoria con cheat engine y sin cerrar el programa cambio el valor de 0X0113FE78 funciona bien pero si cierro y vuelvo a abrir el programa ya la dirección no es la misma y me tira el error de 487 ERROR_INVALID_ADDRESS.