Readprocessmemory comment l'utiliser ? [Résolu]

monoski 132 Messages postés mercredi 15 avril 2009Date d'inscription 13 mai 2013 Dernière intervention - 18 avril 2009 à 00:46 - Dernière réponse : monoski 132 Messages postés mercredi 15 avril 2009Date d'inscription 13 mai 2013 Dernière intervention
- 19 avril 2009 à 12:37
Voila je commence juste avec le VB et avec la programmation de programme à proprement dire puisque je m'étais jusque là borner à apprendre du PhP, html etc...

En gros voila je cherche à utiliser des offset d'un programme préalablement désassemblé (pour connaître le offset), afin de pouvoir récupérer leur valeur, ce à quoi ils correspondent et en fonction de j'utiliserai If, else, while etc pour donner des instructions à mon programme.

Mais voila, je ne sais pas du tout comment utiliser cette fonction, est-ce que quelqu'un pourrait me rediriger vers un tutoriel pour comprendre le fonctionnement de cette fonction ?

Ou mieux, pourrait ton me donner un court morceau de code me permettant de réceptionner une valeur (string ou integer) à laquelle correspondrait mon offset.

Je prends tous les conseils, même si je sais que ce par quoi je commence est assez avancé en programmation. Mais j'ai toujours l'habitude de griller les étapes ^^

J'utilise Visual Basic Express 2008, je préfère préciser ^^
Je vous souhaite à tous une bonne journée et j'espère que vous prendrez le temps de m'aider ^^
Afficher la suite 

Votre réponse

3 réponses

Meilleure réponse
BruNews 21054 Messages postés jeudi 23 janvier 2003Date d'inscription 7 novembre 2014 Dernière intervention - 19 avril 2009 à 00:09
3
Merci
INT32 ReadProcessMemory(hprocess, addr, buffer, size, nRead);


hprocess est un handle de processus.
Si c'est TON process alors hprocess = GetCurrentProcess();
Si c'est un process externe alors:
  hprocess = OpenProcess(PROCESS_VM_READ, 0, processID);
  Quand fini avec le hprocess: CloseHandle(hprocess);


addr: Adresse (dans le hprocess) à laqueele tu veux lire.


buffer: Tableau d'octets (dans TON processus) dans lequel le système mettra les size octets lus.


size: Nombre d'OCTETS que le système doit mettre dans buffer.


nRead: Adresse d'un INT32 (ByRef Long en VB) qui contiendra le nbr d'octets réellement lus au retour de la fonction.


Si ReadProcessMemory() réussit alors retourne != 0 ELSE retourne 0.

ciao...
BruNews, MVP VC++

Merci BruNews 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 92 internautes ce mois-ci

Commenter la réponse de BruNews
monoski 132 Messages postés mercredi 15 avril 2009Date d'inscription 13 mai 2013 Dernière intervention - 18 avril 2009 à 13:17
0
Merci
Edit j'ai dis VB mais visual basic express 2008 ça permet de coder en vb.net

Mea culpa

Bonne journée à tous =)
Commenter la réponse de monoski
monoski 132 Messages postés mercredi 15 avril 2009Date d'inscription 13 mai 2013 Dernière intervention - 19 avril 2009 à 12:37
0
Merci
Oki merci beaucoup je vais me pencher un peu sur la chose, je structure pas bien le code ce que ça peut donner encore mais merci de ta réponse je devrai m'en sortir ^^

Bonne journée à tous =)
Commenter la réponse de monoski

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.