In order for this site to work correctly we need to store a small file (called a cookie) on your computer. Most every site in the world does this, however since the 25th of May 2011, by law we have to get your permission first. Please abandon the forum if you disagree.

Para que este foro funcione correctamente es necesario guardar un pequeño fichero (llamado cookie) en su ordenador. La mayoría de los sitios de Internet lo hacen, no obstante desde el 25 de Marzo de 2011 y por ley, necesitamos de su permiso con antelación. Abandone este foro si no está conforme.

Para el equipo Xailer: FindWindow

Foro público de Xailer en español
Responder
Bingen Ugaldebere
Mensajes: 1310
Registrado: Mié Sep 26, 2007 7:12 pm

Para el equipo Xailer: FindWindow

Mensaje por Bingen Ugaldebere »

Hola compañeros
Veo que entre las funciones del ventanas del API de Windows accesibles
desde Xailer no habéis incluido
nHnd = FindWindow( 0, SCREENCaption )
Para capturar el Handle de una ventana de otra aplicación, lo usaba
hasta ahora en un viejo programa que estoy reconvirtiendo a Xailer.
Alguna manera de hacer un Inline C por ejemplo
Salu2 y muchas gracias.
Bingen Ugaldebere
Mensajes: 1310
Registrado: Mié Sep 26, 2007 7:12 pm

Para el equipo Xailer: FindWindow

Mensaje por Bingen Ugaldebere »

He llegado hasta aquí­ y funciona, busca la calculadora que esta abierta
y le cambia el tí­tulo.
#pragma BEGINDUMP
#include <windows.h>
#include <xailer.h>
XA_FUNC( GetWndHnd )
{
HWND Calc;
Calc = FindWindow(NULL, "Calculadora");
SetWindowText(Calc, "Hola que tal");
Calc = 0;
return (0);
}
#pragma ENDDUMP
Pero cuando quiero que me devuelva el Handle de la ventana no se como
retornar con un retxx() y cual debo de utilizar y es que yo ni idea del
tipo que es un Handle, numérico supongo pero dobre, entero, etc...
He probado de todo pero nada.
#pragma BEGINDUMP
#include <windows.h>
#include <xailer.h>
XA_FUNC( GetWndHnd )
{
hb_retnl( FindWindow(NULL, "Calculadora") );
}
#pragma ENDDUMP
Y por último como se le envia un parámetro a la función Inline C, algo
así­ como GetWndHnd("Calculadora") para obtener el Handle de la
ventana deseada.
Perdón por la lata, muchas gracias.
Salu2.
Salu2.
Avatar de Usuario
jasm
Mensajes: 447
Registrado: Mar Jul 08, 2008 8:12 pm

Para el equipo Xailer: FindWindow

Mensaje por jasm »

Creo recordar que el Handle es un entero largo.
Saludos
Jose A. Suarez
Avatar de Usuario
ignacio
Site Admin
Mensajes: 9462
Registrado: Lun Abr 06, 2015 8:00 pm
Ubicación: Madrid, Spain
Contactar:

Para el equipo Xailer: FindWindow

Mensaje por ignacio »

Bingen,
XA_FUNC( GetWndHnd )
{
HWND hWnd;
hWnd = FindWindow(NULL, "Calculadora");
SetWindowText(hWnd, "Hola que tal");
hb_retnl ((long) hWnd );
}
Saludos,
--
Ignacio Ortiz de Zúñiga
http://www.xailer.com
"Bingen Ugaldebere" <bingen@muninser.com> escribió en el mensaje
news:[email=46698e7a@ozsrv2.ozlan.local...]46698e7a@ozsrv2.ozlan.local...[/email]
> He llegado hasta aquí y funciona, busca la calculadora que esta abierta y
> le cambia el título.
>
>
> #pragma BEGINDUMP
> #include <windows.h>
> #include <xailer.h>
>
> XA_FUNC( GetWndHnd )
> {
> HWND Calc;
> Calc = FindWindow(NULL, "Calculadora");
> SetWindowText(Calc, "Hola que tal");
> Calc = 0;
> return (0);
> }
>
> #pragma ENDDUMP
>
>
> Pero cuando quiero que me devuelva el Handle de la ventana no se como
> retornar con un retxx() y cual debo de utilizar y es que yo ni idea del
> tipo que es un Handle, numérico supongo pero dobre, entero, etc...
> He probado de todo pero nada.
>
> #pragma BEGINDUMP
> #include <windows.h>
> #include <xailer.h>
>
> XA_FUNC( GetWndHnd )
> {
> hb_retnl( FindWindow(NULL, "Calculadora") );
> }
>
> #pragma ENDDUMP
>
> Y por último como se le envia un parámetro a la función Inline C, algo así
> como GetWndHnd("Calculadora") para obtener el Handle de la ventana
> deseada.
>
> Perdón por la lata, muchas gracias.
>
> Salu2.
>
>
>
> Salu2.
Ignacio Ortiz de Zúñiga
[OZ Software]
https://www.ozs.es
--
[Equipo de Xailer / Xailer team]
https://www.xailer.com
Responder