Visual Basic Foro

Programación => Visual Basic 6 => Mensaje iniciado por: Psyke1 en Marzo 13, 2011, 11:08:49 am

Título: [Help] Saber cuando se refresca un control
Publicado por: Psyke1 en Marzo 13, 2011, 11:08:49 am
Imaginemos que tengo un ImageBox de una aplicación ajena a mi proyecto el cual se refresca cada cierto tiempo.
¿Hay alguna manera de saber cuando se refresca el control? :huh:
Googleé pero no encuentro la forma... Sería algo así como un Hook al control, pero según tengo entendido eso desde vb no se puede... :-(
¿Alguna idea? :-\

DoEvents! :P
Título: Re:[Help] Saber cuando se refresca un control
Publicado por: LeandroA en Marzo 13, 2011, 02:07:09 pm
Hola, yo busque mucho tiempo por el tema del escritorio remoto y no encontre nada, quizas como es una aplicación sola podes hookear inyectando, pero si decis que es un imagebox no tiene hwnd ni hdc asi que se complica mas, si la aplicación es on top podes ir capturando (GetDC + Rect) y comparar los cambios con un timer entre captura y captura, pero bueno ya es medio rebuscado, en general no es facil.

Saludos.
Título: Re:[Help] Saber cuando se refresca un control
Publicado por: Psyke1 en Marzo 13, 2011, 02:35:46 pm
¿Y si tuviera hWnd como un textbox se podria hacer algo?
Gracias :)

DoEvents! :P
Título: Re:[Help] Saber cuando se refresca un control
Publicado por: LeandroA en Marzo 13, 2011, 09:16:59 pm
Hola, fijate te paso un ejemplo utilizando la dll dscwpmsg.dll no itercepta el wm_paint como normalmente se hace en un subclass interno pero bueno hay varios msg con los que podes jugar, no se exactamente que es lo que queres hacer, pero te puede servir.

http://www.mediafire.com/?y7oa55czi0xry3j

primero ejecuta el Test.exe (es el que contiene el textbox) y despues ejecuta el proyecto dscwpmsg.vbp (es el que hookea el textbox)

yo creo que si no es un textbox en el cual no se puede tipear el WM_SETTEXT seria perfecto para lo que buscas, de lo contrario vas a tener que interceptar un par de msg mas (como el WM_KEYDOWN, WM_PASTE, etc).

Saludos.
Título: Re:[Help] Saber cuando se refresca un control
Publicado por: Psyke1 en Marzo 14, 2011, 06:06:51 am
Ook gracias!
No obstate lo solucioné de una manera más cutre (Timer)

DoEvents! :P