Convertion

Zootella Messages postés 252 Date d'inscription vendredi 10 juin 2005 Statut Membre Dernière intervention 5 septembre 2006 - 18 sept. 2005 à 18:01
Zootella Messages postés 252 Date d'inscription vendredi 10 juin 2005 Statut Membre Dernière intervention 5 septembre 2006 - 18 sept. 2005 à 22:51
Bonjour tout le monde,



voici mon probléme, j'ai cette fonction :



template <class T> LPVOID GetPtrFromRVA( DWORD rva, T* pNTHeader, PBYTE imageBase ) // 'T' = PIMAGE_NT_HEADERS

{

PIMAGE_SECTION_HEADER pSectionHdr;

INT delta;



pSectionHdr = GetEnclosingSectionHeader( rva, pNTHeader );

if ( !pSectionHdr )

return 0;



delta = (INT)(pSectionHdr->VirtualAddress-pSectionHdr->PointerToRawData);

return (PVOID) ( imageBase + rva - delta );

}



Qui me retourne donc un LPVOID, ce que je voudrais c'est afficher la
valeur retourné dans une message box, mais comment convertir la valeur
retourné en char ?



Merci :)

2 réponses

cs_AlexMAN Messages postés 1536 Date d'inscription samedi 21 décembre 2002 Statut Membre Dernière intervention 24 mai 2009 1
18 sept. 2005 à 19:38
char szBuf[16];
LPVOID ret = GetPtrFromRVA(...);

itoa(*((DWORD *)ret), szBuf, 10);
MessageBox(0, szBuf, 0, 0);

Ca devrait marcher. Mais pourquoi ne renvoies tu pas un DWORD (ou autre) directement, pourquoi passes tu par un pointeur ?

+2(p - n)
0
Zootella Messages postés 252 Date d'inscription vendredi 10 juin 2005 Statut Membre Dernière intervention 5 septembre 2006
18 sept. 2005 à 22:51
J'ai esseyé et ça ne marche pas.
0
Rejoignez-nous