Arme un menu en xailer y en algunas opciones del mismo llamo a programas en
xailer, en otros casos llamo ejecutables que tengo en Fivewin y quiero
usarlos asi hasta que los pase a xailer, el tema se produce al mover la
ventana (pinta caracteres de los bordes y se ensucia todo bastante feo) con
el exe externo llamado desde un objeto tprocess, con execute() pasa lo mismo
si le pongo la clausula lWait en .t. en cualquiera de los dos casos para que
se detenga hasta que salga, si la clausula esta en .f. anda bien solo que
pueden salir del menu y dejar todos los otros ejecutables en funcionamiento.
Gracias y Salu2.
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 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.
Tengo problemas con repintado usando TProcess
- Carlos Ortiz
- Mensajes: 873
- Registrado: Mié Jul 01, 2009 5:44 pm
- Ubicación: Argentina - Córdoba
- Contactar:
Tengo problemas con repintado usando TProcess
Carlos,
la propiedad lWait sólo debería utilizarse en procesos muy rápidos.
Intenta darle tiempo al procesador para pueda procesar todos los mensajes
que recibe del sistema.
WITH OBJECT TProcess...
:cName := ...
:Run()
WHILE :IsRunning()
SysRefresh()
END
END
Saludos,
José Lalín
la propiedad lWait sólo debería utilizarse en procesos muy rápidos.
Intenta darle tiempo al procesador para pueda procesar todos los mensajes
que recibe del sistema.
WITH OBJECT TProcess...
:cName := ...
:Run()
WHILE :IsRunning()
SysRefresh()
END
END
Saludos,
José Lalín
- Carlos Ortiz
- Mensajes: 873
- Registrado: Mié Jul 01, 2009 5:44 pm
- Ubicación: Argentina - Córdoba
- Contactar:
Tengo problemas con repintado usando TProcess
Gracias Jose,
no surte efecto sigue repintando mal.
Este el codigo que llama a un exe externo
METHOD Menu1Item1_1Click( oSender, oMenu ) CLASS TInicio
WITH OBJECT ::TProcess:=TProcess()
::TProcess:cName := "assistcuponescupones.exe"
:lWait := .t.
:Run()
WHILE :IsRunning()
:SysRefresh()
END
END WITH
no surte efecto sigue repintando mal.
Este el codigo que llama a un exe externo
METHOD Menu1Item1_1Click( oSender, oMenu ) CLASS TInicio
WITH OBJECT ::TProcess:=TProcess()
::TProcess:cName := "assistcuponescupones.exe"
:lWait := .t.
:Run()
WHILE :IsRunning()
:SysRefresh()
END
END WITH
@dbfarma
www.dbfarma.com.ar
www.dbfarma.com.ar
Tengo problemas con repintado usando TProcess
Carlos,
> :lWait := .t.
¿ Has probado sin esta línea ? Date cuenta que le estás diciendo al sistema
que ejecute el proceso y no retorne a la aplicación que lo llama, por tanto
el bucle que tienes después nunca se ejecuta.
Saludos,
José Lalín
> :lWait := .t.
¿ Has probado sin esta línea ? Date cuenta que le estás diciendo al sistema
que ejecute el proceso y no retorne a la aplicación que lo llama, por tanto
el bucle que tienes después nunca se ejecuta.
Saludos,
José Lalín
- Carlos Ortiz
- Mensajes: 873
- Registrado: Mié Jul 01, 2009 5:44 pm
- Ubicación: Argentina - Córdoba
- Contactar:
Tengo problemas con repintado usando TProcess
Si justamente esa es la idea, llamar a otra aplicacion, aplicación
desarrollada en fivewin que por ahora no adaptare a xailer, quiero
ejecutarla desde el menu en xailer que funcione como un dialogo y que tengan
que cerrarla para luego poder continuar con otras opciones del menú que si
ya están en xailer.
Atte. CO. y muchas gracias, si tenes alguna idea de como me conviene llamar
a exes externos o cerrandolos desde xailer al salir tambien seria de mucha
ayuda.
Nuevamente gracias.
desarrollada en fivewin que por ahora no adaptare a xailer, quiero
ejecutarla desde el menu en xailer que funcione como un dialogo y que tengan
que cerrarla para luego poder continuar con otras opciones del menú que si
ya están en xailer.
Atte. CO. y muchas gracias, si tenes alguna idea de como me conviene llamar
a exes externos o cerrandolos desde xailer al salir tambien seria de mucha
ayuda.
Nuevamente gracias.
@dbfarma
www.dbfarma.com.ar
www.dbfarma.com.ar
Tengo problemas con repintado usando TProcess
Carlos,
> Si justamente esa es la idea, llamar a otra aplicacion, aplicación
> desarrollada en fivewin que por ahora no adaptare a xailer, quiero
> ejecutarla desde el menu en xailer que funcione como un dialogo y que
> tengan que cerrarla para luego poder continuar con otras opciones del menú
> que si ya están en xailer.
>
> Atte. CO. y muchas gracias, si tenes alguna idea de como me conviene
> llamar a exes externos o cerrandolos desde xailer al salir tambien seria
> de mucha ayuda.
Lo mejor que puedes hacer es ejecutar el segundo programa y desactivar la
ventana principal mientras esté corriendo. Sería algo así:
METHOD Menu1Item1_1Click( oSender, oMenu ) CLASS TInicio
WITH OBJECT ::TProcess:=TProcess()
::TProcess:cName := "assistcuponescupones.exe"
:lWait := .t.
:Run()
Application:oMainform:Disable()
WHILE :IsRunning()
:SysRefresh()
END
Application:oMainform:Enable()
END WITH
De esta forma dejas que el programa responda a los mensajes de windows
(incluidos los de pintado) al tiempo que impides que el usuario pueda hacer
click e interactuar con tu programa.
--
Un saludo,
José F. Giménez
http://www.xailer.com
http://www.xailer.info
> Si justamente esa es la idea, llamar a otra aplicacion, aplicación
> desarrollada en fivewin que por ahora no adaptare a xailer, quiero
> ejecutarla desde el menu en xailer que funcione como un dialogo y que
> tengan que cerrarla para luego poder continuar con otras opciones del menú
> que si ya están en xailer.
>
> Atte. CO. y muchas gracias, si tenes alguna idea de como me conviene
> llamar a exes externos o cerrandolos desde xailer al salir tambien seria
> de mucha ayuda.
Lo mejor que puedes hacer es ejecutar el segundo programa y desactivar la
ventana principal mientras esté corriendo. Sería algo así:
METHOD Menu1Item1_1Click( oSender, oMenu ) CLASS TInicio
WITH OBJECT ::TProcess:=TProcess()
::TProcess:cName := "assistcuponescupones.exe"
:lWait := .t.
:Run()
Application:oMainform:Disable()
WHILE :IsRunning()
:SysRefresh()
END
Application:oMainform:Enable()
END WITH
De esta forma dejas que el programa responda a los mensajes de windows
(incluidos los de pintado) al tiempo que impides que el usuario pueda hacer
click e interactuar con tu programa.
--
Un saludo,
José F. Giménez
http://www.xailer.com
http://www.xailer.info