m4rty! que gusto verte por acá haha de haberlo sabido habría posteado en indetectables también xD, pues te comento con printf si funciona con %x (hex) y %d (entero), pero lo que pasa es que no estoy haciendo el programa para la consola, estoy usando las librerías de wx para crear una GUI, y necesito pasar el parámetro como una string de tipo char * o LPSTR, así:
Wx.Edit->SetValue(entrypoint);
Sólo quiero convertir el valor del entrypoint en una string para mostrarlo en pantalla!. He intentado con el & (cómo no lo puse anteriormente) y ahora no me marca error pero me imprime caracteres raros
WxEdit->SetValue((char *)&inh.OptionalHeader.AddressOfEntryPoint); // salida -> ”
Alguna otra idea? jeje
->Edito
Ya recorde que al hacerle (char *) a un int te lo convierte a ascii... Al parecer toma el valor DWORD del entry point y convierte los números a ascii, pero de ahí creo que me las puedo arreglar lo que hace es esto:
DWORD xxx=65;
WxEdit->SetValue((char *)&xxx)); // salida -> A
jeje bueno si alguien tiene una idea de como hacer que salga el numero sin convertirlo a ascii pues que lo diga haha mientras voy a intentar otras formas y sigo publicando
--> Edito 2
Ya lo he solucionado he utilizado itoa, no quería usarlo por no ser "estandar" pero bue.. funciona y es lo que vale supongo, ojala y el tema le sirva a alguien que intente algo similar en un futuro! salu2:
// ejemplo de solucion al problema ->
int entrypoint;
char buffer[30];
entrypoint=inh.OptionalHeader.AddressOfEntryPoint;
itoa(entrypoint,buffer,10);
//WxEdit1->SetValue(buffer);
Gracias m4rty nos estamos viendo capo
-> Edito por tercera vez...
Seguí experimentando, otra solución alternativa:
entrypoint=inh.OptionalHeader.AddressOfEntryPoint;
sprintf(buffer,"%d",entrypoint);
Se almacena ya convertido en char en buffer