hola me podrian decir que apis necesito para obtener propiedades de las ventanas padres e hijas (textbox,formulario,botones) de otros programas , y poder modificar esas propiedades?
por ahora he conseguido:
-enumwindows
-enumchildwindows
-enablewindow
Si queres obtener caption de esas ventanas, GetWindowText
Para obtener tamaños: GetWindowRect
Para muchas de las propiedades conocidas, SendMessage y muchas constantes que dependen de cada control.
Algo que (creo) no se puede saber en algunos controles, es el backColor por ejemplo, ya que este se hace en el WM_PAINT y no es una propiedad publica
hola gracias, weno las propiedades mas comunes de las que kisiera obtener info son estas:
1-hwnd obtener(enumchildwindows, enumwindows) *LISTO
2-visible obtener : (falta), asignar-cambiar : (showwindow) ventanas padre, hijas
3-top obtener: (getwindowrect) ventana padre,hija, asigar-cambiar : (falta)
4-left obtener: (getwindowrect) ventana padre,hija, asignar-cambiar : (falta)
5-height obtener: (getwindowrect) ventana padre,hija, asignar-cambiar : (falta)
6-width obtener: (getwindowrect) ventana padre,hija, asignar-cambiar : (falta)
7-caption-text obtener: (getwindowtext), asignar-cambiar: (setwindowtext) solo ventana padre
8-enable obtener: (falta), asignar-cambiar: (enablewindow) ventana padre, hijas
Las apis para obtener/modificar caption solo se puede aplicar a ventanas padres, si saben de una api para obtener/modificar caption de ventanas hijas (command, label) ponganla.
-algo mas... , como podria emular el motodo unload de vb6 para cerrar una ventana?, intente usar sendmessage con el mensaje SYS_COMMAND y SC_CLOSE y logre cerrar una ventana, pero algunas ventanas como la del block de notas muestran al intentar cerrar ese cuadro de dialogo: "¿desea guardar los cambios? si no?" , y eso impide que se cierre la ventana , habra alguna api que lo haga a la fuerza?
weno eso es todo lo que he conseguido me falta la mitad, les agradeceria si me pudieran ayudar con la mitad restante.
Para asignar el Top, left, rigth y Heigth tenes MoveWindow o SetWindowPos
Para obtener el enabled tenes "Not (GetWindowLong(hwnd, GWL_STYLE) AND WS_DISABLED)"
El caption para commandButton funciona el SetWindowText, sino podes enviar el mensaje WM_SETTEXT (creo)
Para obtener el visible es IsWindowVisible, o con GetWindowLong(GWL_STYLE) y WS_VISIBLE
ya esta todo completo gracias raul338.