Page 1 of 1

Aplicacioón Agota Recursos Gráficos de Windows XP

PostPosted: Thu Dec 03, 2009 10:56 pm
by juan fco. vasquez Mendoza
Hola,

Tengo una de mis aplicaciones compilada en FW 2.4 y CLIPPER 5.2, cuando se ejecuta muchas veces se consumen los recursos gráficos del Windows XP, entonces hay que reiniciar el equipo, quisisera saber la solución para esta versión.

Gracias,

Juan Fco. Vasquez M.
Rep. Dominicana

Re: Aplicacioón Agota Recursos Gráficos de Windows XP

PostPosted: Fri Dec 04, 2009 9:57 am
by Antonio Linares
Juan,

Eso se debe a que estas dejando objetos GDI sin liberar correctamente.

Llama a la función SetResDebug( .T. ) al comienzo de tu aplicación y a CheckRes() despues de cada opción general del programa. Se generará un fichero TXT que te indica los objetos GDI que hay sin liberar.

Con FWH (FiveWin para Harbour) 32 bits este control se ha mejorado mucho y se realiza de una forma mucho más cómoda:
viewtopic.php?f=6&t=15936&start=0&hilit=gdi

Re: Aplicacioón Agota Recursos Gráficos de Windows XP

PostPosted: Fri Dec 04, 2009 4:28 pm
by juan fco. vasquez Mendoza
Antonio,

Esta parte del programa CHECKRES.PRG me presenta errores debido a que no poseo estos archivos de estensió H. Donde los consigo.

#pragma BEGINDUMP

#include <hbapi.h>
#include <hbapiitm.h>
#include <hbvm.h>
#include <windows.h>

Gracias,
Juan Fco. Vasquez M.
Rep. Dom.

Re: Aplicacioón Agota Recursos Gráficos de Windows XP

PostPosted: Fri Dec 04, 2009 9:03 pm
by Antonio Linares
Juan Fco.

Ese código fuente es solo para FWH 32 bits.

En FW 16 bits esta incluido, aunque mas simple, y debería funcionarte tal cual, sin añadir ese código en C.

Re: Aplicacioón Agota Recursos Gráficos de Windows XP

PostPosted: Tue Dec 08, 2009 12:18 am
by juan fco. vasquez Mendoza
Hola, Antonio


Probe con las funciones que me dijeste en los post anteriores, las acepta FW para clipper, pero no me genera ningún archivo en disco. Me gustaria poder resolver esto de los recursos graficos que se consumen.

Gracias,

Juan Fco. Vasquez M.

Re: Aplicacioón Agota Recursos Gráficos de Windows XP

PostPosted: Tue Dec 08, 2009 12:23 am
by Antonio Linares
Juan Fco,

Has llamado a SetResDebug( .T. ) al comienzo de tu aplicación y a CheckRes() justo antes de salir ?

Revisa todos los bitmaps, cursores, fonts, brushes, etc que uses en tu aplicación y comentanos como los usas y como los liberas (normalmente usando :End() )

Re: Aplicacioón Agota Recursos Gráficos de Windows XP

PostPosted: Tue Dec 08, 2009 12:32 am
by juan fco. vasquez Mendoza
Antonio,

Use las funciones como especificaste anteriormente, pero no me genera ningun archivo, (los END, solo se lo aplico a las ventanas, a los FONT que se definen hay que aplicarles END, para cerrarlos.

Gracias,

Juan F. V.

Re: Aplicacioón Agota Recursos Gráficos de Windows XP

PostPosted: Tue Dec 08, 2009 1:20 am
by Antonio Linares
Juan Fco,

Cualquier elemento GDI que se cree independientemente, ha de ser destruido usando :End(),

por ejemplo en el caso de un font:

DEFINE FONT oFont NAME ... SIZE ..., ... // Se crea

// lo usamos con un control

@ ..., ... GET ... FONT oFont

ACTIVATE WINDOW ...

oFont:End() // Se destruye

Re: Aplicacioón Agota Recursos Gráficos de Windows XP

PostPosted: Tue Dec 08, 2009 2:06 am
by juan fco. vasquez Mendoza
Gracias, por tu ayuda y atenciones, estoy arreglando los programas donde falta esto.

Bendiciones para ti,

Juan Fco. V. M.
Rep. Dom.