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

 

 


Tema destacado: Únete al Grupo Steam elhacker.NET


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  pasar argumentos por un CreateThread?
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: 1 [2] Ir Abajo Respuesta Imprimir
Autor Tema: pasar argumentos por un CreateThread?  (Leído 7,539 veces)
while

Desconectado Desconectado

Mensajes: 24


Ver Perfil
Re: pasar argumentos por un CreateThread?
« Respuesta #10 en: 14 Octubre 2010, 22:42 pm »

He probado la última opción y tengo algunos problemas al concatenar y pasar por el thread:

FuncionLlamarThread("asdfA","asdfB");


...


void FuncionLlamarThread(char *a1, char *a2)
{
char finaldefinido[50];
sprintf(finaldefinido, "%s-%s", a1, a2);

char *final = finaldefinido;
MessageBox(0, final, "Title",MB_OK); // Funciona, por lo que aparentemente se han concatenado.

CreateThread( 0, 0, &mithread, final, 0, 0 );   
}

Pero luego el mithread, el messagebox aparece en blanco al hacer:
char *nombre = (char*)pVoid;
MessageBox(0, nombre, "Title",MB_OK);


En línea

Eternal Idol
Kernel coder
Moderador
***
Desconectado Desconectado

Mensajes: 5.904


Israel nunca torturó niños, ni lo volverá a hacer.


Ver Perfil WWW
Re: pasar argumentos por un CreateThread?
« Respuesta #11 en: 14 Octubre 2010, 23:41 pm »

"Depuralo para ver que pasas y recibis; depende del codigo pero si estas pasando una estructura que esta en la pila y la funcion retorna ya no es confiable el puntero."

"... podria desaparecer de su ambito ..."

void FuncionLlamarThread(char *a1, char *a2)
{
char finaldefinido[50];
...
}

Tu cadena esta en la pila y su ambito es local a la funcion.


En línea

La economía nunca ha sido libre: o la controla el Estado en beneficio del Pueblo o lo hacen los grandes consorcios en perjuicio de éste.
Juan Domingo Perón
Páginas: 1 [2] Ir Arriba Respuesta Imprimir 

Ir a:  

WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines