Problème d'écriture en mémoire

    Publicités

Users Who Are Viewing This Thread (Total: 0, Members: 0, Guests: 0)

Status
Not open for further replies.

Babart

V
Sep 24, 2011
522
0
321
30
Bonjour,

Etant en train d'essayer (encore) de faire mon premier trainer pour BO2 SP, je suis partit dans l'écriture de mémoire.
Seulement, je n'arrive pas à écrire correctement dans la mémoire.

j'ai relevé les adresses mémoires avec cheat-engine, et je suppose que ce sont les bonnes puisque en les modifiant avec CE, elles changent IG.
Mais avec mon code, rien ne change.
Si quelqu'un pourrait m'aider, je lui en serez reconnaissant.

Code:
int ammoAdress = 0x1BAB3DC; // adress munition
int wantedValue = 40;
writeIntoMemory(ammoAdress, wantedValue);

private: void writeIntoMemory(int targetAdresse, int value)
{
	WriteProcessMemory (hProcess, (LPVOID)targetAdresse, (LPVOID) &value, sizeof(&value), NULL);
}
 

Babart

V
Sep 24, 2011
522
0
321
30
En enlevant des bouts de code n'ayant rien à voir, ça donne ça.

Code:
T6SP = FindWindow(NULL, "Call of Duty®: Black Ops II");
if( T6SP == NULL )
{
}else
{
	GetWindowThreadProcessId(T6SP, &T6SP_ID);
	hProcess = OpenProcess(PROCESS_ALL_ACCESS, NULL, T6SP_ID);
	if( hProcess == NULL )
	{
		MessageBox::Show("Unable to open the procces.\nPlease, report this error.","Error");
		gameReady = false;
	}else
	{
		// game & process found
		timer_munition->Start(); // mon code d'écriture est dans ce timer
}
 

TheHardButcher

Programmeur C/C++
V
Dec 14, 2009
1,461
58
964
France
Déjà, je te conseil de te rajouter des message de debug un peu partout, pour vérifier rien que si :
Code:
if( T6SP == NULL ){ }
Bah au moins t'es au courant !

Autre chose, envoie le code complet, parce que dans le morceau que t'a envoyer, il y a déjà des fautes de "}" qui manque et autre, envoie TOUT !
 

Babart

V
Sep 24, 2011
522
0
321
30
Désolé, j'ai fixé ça seul :p
Il me manquait l'ajout de l'adresse de base.

Et il fallait rajouter une librairie supplémentaire lors de la compilation (User32.lib).

@TheHardButcher
En fait, effectivement, j'avais raccourcis mon code.
j'ai enlevé toutes la gestion des erreurs, try{}catch et MessageBox dans le code afin de laisser essentiellement ce sur quoi je bloquais.
Encore merci à tous pour vos conseils :)
 

TheHardButcher

Programmeur C/C++
V
Dec 14, 2009
1,461
58
964
France
Au pire, si tu galère pour ce genre de code, tu peux toujours regarder mon tuto sur l'écriture de mémoire ;)
 
Status
Not open for further replies.