SoloCodigo

Programación General => C/C++ => Visual C++ => Mensaje iniciado por: Sandra_mad en Viernes 2 de Julio de 2004, 11:03

Título: Hilos
Publicado por: Sandra_mad en Viernes 2 de Julio de 2004, 11:03
Hola a todos!!!! Casi tengo solucionado mi problema de hilos, gracias a
mucha gente que me ha ayudado, y guiado; El problema era modificar una
caja de texto desde otro hilo, distinto al original, que es donde se creo;
Para ello:

HWND HandleEvolucionDescarga =
m_pPrincipal>m_CtrlEvolucionDescarga.GetSafeHwnd();
Handle de la ventana que quiero modficar; Se la paso al hilo:
AfxBeginThread(HiloDescarga, (LPVOID)HandleEvolucionDescarga);

En el hilo creo un objeto:
CEdit* EvolucionDescarga = (CEdit*) CWnd::FromHandle
((HWND)pEvolucionDescarga);

Y a partir de este, modifico el contenido:

EvolucionDescarga->GetWindowText(tmp);
tmp += _T("\r\n");
tmp += _T("Guardando en el fichero:");
EvolucionDescarga->SetWindowText(tmp);

Me sale perfectamente, pero ahora bien, realmente lo que quiero es modicar
varias cajas de texto, encuadradas en un control por pestañas, mi idea era
pasar por los parametros del hilo, tantos handles como ventanas, pero me
da un error, no se si es ke no se puede, o no se...:

HWND HandleEvolucionDescarga =
m_pPrincipal->m_CtrlEvolucionDescarga.GetSafeHwnd();

HWND HandleDescargados = m_pPrincipal->m_CtrlDescargados.GetSafeHwnd();

AfxBeginThread(HiloDescarga, (LPVOID)HandleEvolucionDescarga,
(LPVOID)HandleDescargados);

Me da un error en la llamada al hilo, en AfxBegin..., para ello tengo
declarado el hilo:

HiloDescarga(LPVOID,LPVOID);

Me da el siguiente error:
none of the 2 overloads can convert parameter 1 from type 'unsigned int
(__cdecl *)(void *,void *)'

Gracias por leerme, y gracias por ayudarme;
Título: Re: Hilos
Publicado por: Eternal Idol en Sábado 3 de Julio de 2004, 11:53
Un thread solo puede aceptar un parametro, pero podes hacer que ese parametro sea un array de HANDLES y pasarlo sin problemas.

 :hola:  :ph34r:  :comp:
Título: Re: Hilos
Publicado por: Sandra_mad en Lunes 5 de Julio de 2004, 15:30
Gracias, al final lo hize con una estructura de handles;
Título: Re: Hilos
Publicado por: Eternal Idol en Lunes 5 de Julio de 2004, 15:31
De nadas, me alegro de que lo hayas podido solucionar.

 :hola: