elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Guía rápida para descarga de herramientas gratuitas de seguridad y desinfección


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  Array Unicode
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Array Unicode  (Leído 2,155 veces)
Cromatico

Desconectado Desconectado

Mensajes: 110


Ver Perfil
Array Unicode
« en: 18 Marzo 2013, 11:51 am »

Buenos dias a todos! Queria hacerles una consulta, tengo un proyecto en DEV C++ con una funcion para leer un array de bytes... ReadProcessMemory...

Lo asigno a un array declarado de esta forma:
Código:
BYTE Array[30];

Hasta acá todo perfecto, ahora cuando lo quiero convertir a string...

Código:
*TEXTO = const_cast<char*>(LPCSTR(Array));
MessageBox(NULL, *TEXTO, "PRUEBA", MB_OK);
long *buffer;
char text[] = "Nada ";
char name[sizeof(*TEXTO)];
strcpy(name, *TEXTO);
buffer = (long *)calloc(sizeof(*TEXTO), sizeof(*TEXTO));
*TEXTO = (char *)buffer;
strcat(*TEXTO, name);

Con la primera linea, ya logro que el MessageBox me salga correctamente... Lo demas, es para que retorne ese string en VB... No se si habra codigo que sobre, pero es la unica forma que pude hacer que funcione...

El tema es que cuando el array es UNICODE, solo sale la primera letra en el MESSAGEBOX, al igual que lo que llega a VB, solo la primera letra... Como puedo convertir el Array a UTF, o bien, hacer que en el Array, se quiten los 00 que tiene entre cada caracter?

Muchas gracias!!!


En línea

Cromatico

Desconectado Desconectado

Mensajes: 110


Ver Perfil
Re: Array Unicode
« Respuesta #1 en: 18 Marzo 2013, 15:52 pm »

Bueno resolvi haciendo otro array con un for que va sumando de dos en dos, y va asignando junto a otro contador, el otro array...
Poco y nada en C++, pero fue la forma en que me la pude rebuscar y funciono :P.

Gracias y saludos


En línea

x64core


Desconectado Desconectado

Mensajes: 1.908


Ver Perfil
Re: Array Unicode
« Respuesta #2 en: 20 Marzo 2013, 07:25 am »

Existen funciones que te facilitan la conversion:
MultiByteToWideChar
WideCharToMultiByte
En línea

Luz Violeta

Desconectado Desconectado

Mensajes: 26





Ver Perfil WWW
Re: Array Unicode
« Respuesta #3 en: 23 Marzo 2013, 01:54 am »

Prácticamente todas las funciones que vas a usar de la API de Windows tienen su versión "ansi" y "unicode" ... básicamente según hagas un define indicando que el proyecto es unicode o no, el preprocesador apunta las funciones a su versión ansi u unicode.

Miralo así:

MessageBoxA → Versión ANSI
MessageBoxW → Versión "Wide" o Unicode.
MessageBox → Un preprocesador que apunta a una u otra según se configure el proyecto.

Antes que hacer conversiones, es mejor usar la respectiva función.

Saludos.

P.S → Eso o entendí rrré mal tu intención x')
En línea

It's sort of like my past is an unfinished painting. And as the artist of that painting, I must fill in all the ugly holes and make it beautiful again.
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
El bug del UNICODE
Tutoriales - Documentación
el-brujo 2 16,327 Último mensaje 21 Febrero 2004, 02:39 am
por Crackptus^^
Copiar parte de una array a otra array
Programación Visual Basic
sircid 3 5,010 Último mensaje 19 Diciembre 2007, 11:27 am
por LeandroA
Unicode C++
Programación C/C++
Monica_Barcelona 3 3,938 Último mensaje 19 Mayo 2010, 21:01 pm
por Eternal Idol
Convertir Array de php a Array de javascript
PHP
WHK 0 4,299 Último mensaje 23 Enero 2012, 18:05 pm
por WHK
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines