驴Alguien ha tenido alguna experiencia similar?
Lo cierto es que no se por d贸nde empezar a comprobar.
Muestra de un cuelgue :
Como se puede observar no se muestra si quiera el men煤 superior ...
Gracias,
Gracias Antonio, estuve probando esta funci贸n pero incluso "forzando" a dejarme alg煤n recurso (un FONT, por ejemplo) en checkres.txt no se me registra nada. Previamente incluyo el SetResDebug (.T.) , 驴puede ser por mi versi贸n de fwh 12.04 ?
Cuando la aplicaci贸n se cuelgue, en el administrador de tareas puedes ver que consumo esta teniendo.
Revisa los valores que se muestran (ahi aparecen los handles GDI) y copia la imagen aqui
Estar铆a bien probar con la versi贸n m谩s reciente de FWH y ver si tambien ocurre
Hola 脕ngel,
Alguna vez he visto esas pantallas pero en fase de desarrollo... no recuerdo ahora mismo como se producian...
Me han pasado errores raros, que no s茅 si est谩n relacionados, como que el self (::) en la clase TGet tome como tipo Numeric (raro donde lo haya).
De entrada te diria que:
1) Revisaras los timers que tengas... puede ser que alguno se active y entre en un bucle infinito y la pantalla de "cuelgue" porque el bucle de eventos no atienda al pintado de los recursos...
2) Comprueba la cantidad de memoria que tienen tus usuarios y cuanta tienen disponible.
3) Intenta delimitar si el problema se produce tambien al poco de empezar a trabajar o s贸lo cuando ya llevan tiempo.
De todas formas dale al hilo y a ver si vamos afinando los motivos.
Saludos
Gracias Antonio y hmPaquito. Ahora mismo mi prioridad est谩 en intentar hacer funcionar CheckRes() en mi aplicaci贸n ya que no logro que haga nada. Estoy probando alg煤n ejemplo de la carpeta samples (por ejemplo bug.prg) y s铆 que muestra los recursos colgados. Estoy probando en cualquiera de mis dos aplicaciones (gesti贸n y contabilidad) forzando dejar colgado alg煤n objeto FONT pero no lo refleja en checkres.txt ... , incluso creando un peque帽o m贸dulo y llam谩ndolo desde la aplicaci贸n tampoco refleja el detalle . Me queda comprobar las librer铆as que incluyo por si alguna pudiera interferir en el funcionamiento de checkres.
Comprobando el consumo por el administrador de tareas resulta evidente que, aunque muy poco, el consumo de memoria va creciendo a medida que se trabaja. En usuarios que hacen un uso intensivo de la aplicaci贸n pienso que acabar谩 saturando.
Y
4) El antivirus, que de repente todo empiece a ir mal, puede ser cosa del antivirus, cada vez m谩s invasivos. A ver si algun usuario con m谩s experiencia y al que le haya aparecido el error puede trabajar siquiera cuatro horas con el antivirus desconectado y a ver qu茅 pasa.
驴C贸mo veo el uso de GDI en Windows 10?
Angel, no te crea ning煤n fichero hb_out.log?
Has cambiado 煤ltimamente algo en la aplicaci贸n?
Est谩s usando alguna librer铆a de terceros?
Set Default To (cDirTrabajo)06/07/2016 14:41:54: BRUSH,269487392,(b)TRBTN(102)->TRBTN:DISPLAY(0)->TCONTROL:HANDLEEVENT(1666)->TRBTN:HANDLEEVENT(1520)->_FWH(3153)->DIALOGBOX(0)->TDIALOG:ACTIVATE(270)->ENVIODEERRORENTRANDOALPROGRAMA(184)->ENTRADA(519)->MAIN(103)
聽 聽
06/07/2016 14:41:54: BRUSH,235932981,(b)TRBTN(102)->TRBTN:DISPLAY(0)->TCONTROL:HANDLEEVENT(1666)->TRBTN:HANDLEEVENT(1520)->_FWH(3153)->DIALOGBOX(0)->TDIALOG:ACTIVATE(270)->ASI_FICHA(362)->(b)ASIENTOS(112)->FICHEDITA(1154)->(b)EDITAFICHA(168)->(b)KEYFICHA(902)->(b)MSGRUN(36)->(b)TDIALOG(87)->TDIALOG:DISPLAY(0)->TDIALOG:HANDLEEVENT(880)->DIALOGBOXINDIRECT(0)->TDIALOG:ACTIVATE(270)->MSGRUN(42)->KEYFICHA(902)->(b)BROWSEFICHA(708)->TWINDOW:KEYDOWN(2610)->TCONTROL:KEYDOWN(1019)->TXBROWSE:KEYDOWN(2213)->TWINDOW:HANDLEEVENT(0)->TCONTROL:HANDLEEVENT(1700)->TXBROWSE:HANDLEEVENT(11666)->_FWH(3153)->WINRUN(0)->TMDIFRAME:ACTIVATE(980)->ENTRADA(536)->MAIN(103)
聽 聽
06/07/2016 14:41:54: BRUSH,202377857,(b)TRBTN(102)->TRBTN:DISPLAY(0)->TCONTROL:HANDLEEVENT(1666)->TRBTN:HANDLEEVENT(1520)->_FWH(3153)->DIALOGBOX(0)->TDIALOG:ACTIVATE(270)->ASI_FICHA(362)->(b)ASIENTOS(112)->FICHEDITA(1154)->(b)EDITAFICHA(168)->(b)KEYFICHA(902)->(b)MSGRUN(36)->(b)TDIALOG(87)->TDIALOG:DISPLAY(0)->TDIALOG:HANDLEEVENT(880)->DIALOGBOXINDIRECT(0)->TDIALOG:ACTIVATE(270)->MSGRUN(42)->KEYFICHA(902)->(b)BROWSEFICHA(708)->TWINDOW:KEYDOWN(2610)->TCONTROL:KEYDOWN(1019)->TXBROWSE:KEYDOWN(2213)->TWINDOW:HANDLEEVENT(0)->TCONTROL:HANDLEEVENT(1700)->TXBROWSE:HANDLEEVENT(11666)->_FWH(3153)->WINRUN(0)->TMDIFRAME:ACTIVATE(980)->ENTRADA(536)->MAIN(103)
聽 聽
06/07/2016 14:41:54: BRUSH,1913653851,(b)TRBTN(102)->TRBTN:DISPLAY(0)->TCONTROL:HANDLEEVENT(1666)->TRBTN:HANDLEEVENT(1520)->_FWH(3153)->DIALOGBOX(0)->TDIALOG:ACTIVATE(270)->ASI_FICHA(362)->(b)ASIENTOS(112)->FICHEDITA(1154)->(b)EDITAFICHA(168)->(b)KEYFICHA(902)->(b)MSGRUN(36)->(b)TDIALOG(87)->TDIALOG:DISPLAY(0)->TDIALOG:HANDLEEVENT(880)->DIALOGBOXINDIRECT(0)->TDIALOG:ACTIVATE(270)->MSGRUN(42)->KEYFICHA(902)->(b)BROWSEFICHA(708)->TWINDOW:KEYDOWN(2610)->TCONTROL:KEYDOWN(1019)->TXBROWSE:KEYDOWN(2213)->TWINDOW:HANDLEEVENT(0)->TCONTROL:HANDLEEVENT(1700)->TXBROWSE:HANDLEEVENT(11666)->_FWH(3153)->WINRUN(0)->TMDIFRAME:ACTIVATE(980)->ENTRADA(536)->MAIN(103)
聽 聽
06/07/2016 14:41:54: BRUSH,-1139799473,(b)TRBTN(102)->TRBTN:DISPLAY(0)->TCONTROL:HANDLEEVENT(1666)->TRBTN:HANDLEEVENT(1520)->_FWH(3153)->DIALOGBOX(0)->TDIALOG:ACTIVATE(270)->ASI_FICHA(362)->(b)ASIENTOS(112)->FICHEDITA(1154)->(b)EDITAFICHA(168)->(b)KEYFICHA(902)->(b)MSGRUN(36)->(b)TDIALOG(87)->TDIALOG:DISPLAY(0)->TDIALOG:HANDLEEVENT(880)->DIALOGBOXINDIRECT(0)->TDIALOG:ACTIVATE(270)->MSGRUN(42)->KEYFICHA(902)->(b)BROWSEFICHA(708)->TWINDOW:KEYDOWN(2610)->TCONTROL:KEYDOWN(1019)->TXBROWSE:KEYDOWN(2213)->TWINDOW:HANDLEEVENT(0)->TCONTROL:HANDLEEVENT(1700)->TXBROWSE:HANDLEEVENT(11666)->_FWH(3153)->WINRUN(0)->TMDIFRAME:ACTIVATE(980)->ENTRADA(536)->MAIN(103)
聽 聽
06/07/2016 14:41:54: BRUSH,-753923516,(b)TRBTN(102)->TRBTN:DISPLAY(0)->TCONTROL:HANDLEEVENT(1666)->TRBTN:HANDLEEVENT(1520)->_FWH(3153)->DIALOGBOX(0)->TDIALOG:ACTIVATE(270)->ASI_FICHA(362)->(b)ASIENTOS(112)->FICHEDITA(1154)->(b)EDITAFICHA(168)->(b)KEYFICHA(902)->(b)MSGRUN(36)->(b)TDIALOG(87)->TDIALOG:DISPLAY(0)->TDIALOG:HANDLEEVENT(880)->DIALOGBOXINDIRECT(0)->TDIALOG:ACTIVATE(270)->MSGRUN(42)->KEYFICHA(902)->(b)BROWSEFICHA(708)->TWINDOW:KEYDOWN(2610)->TCONTROL:KEYDOWN(1019)->TXBROWSE:KEYDOWN(2213)->TWINDOW:HANDLEEVENT(0)->TCONTROL:HANDLEEVENT(1700)->TXBROWSE:HANDLEEVENT(11666)->_FWH(3153)->WINRUN(0)->TMDIFRAME:ACTIVATE(980)->ENTRADA(536)->MAIN(103)
聽 聽
06/07/2016 14:41:54: BRUSH,1997539906,(b)TRBTN(102)->TRBTN:DISPLAY(0)->TCONTROL:HANDLEEVENT(1666)->TRBTN:HANDLEEVENT(1520)->_FWH(3153)->DIALOGBOX(0)->TDIALOG:ACTIVATE(270)->ASI_FICHA(362)->(b)ASIENTOS(112)->FICHEDITA(1154)->(b)EDITAFICHA(168)->(b)KEYFICHA(902)->(b)MSGRUN(36)->(b)TDIALOG(87)->TDIALOG:DISPLAY(0)->TDIALOG:HANDLEEVENT(880)->DIALOGBOXINDIRECT(0)->TDIALOG:ACTIVATE(270)->MSGRUN(42)->KEYFICHA(902)->(b)BROWSEFICHA(708)->TWINDOW:KEYDOWN(2610)->TCONTROL:KEYDOWN(1019)->TXBROWSE:KEYDOWN(2213)->TWINDOW:HANDLEEVENT(0)->TCONTROL:HANDLEEVENT(1700)->TXBROWSE:HANDLEEVENT(11666)->_FWH(3153)->WINRUN(0)->TMDIFRAME:ACTIVATE(980)->ENTRADA(536)->MAIN(103)
聽 聽
06/07/2016 14:41:54: BRUSH,1051176,(b)TRBTN(102)->TRBTN:DISPLAY(0)->TCONTROL:HANDLEEVENT(1666)->TRBTN:HANDLEEVENT(1520)->_FWH(3153)->DIALOGBOX(0)->TDIALOG:ACTIVATE(270)->ASI_FICHA(362)->(b)ASIENTOS(112)->FICHEDITA(1154)->(b)EDITAFICHA(168)->(b)KEYFICHA(902)->(b)MSGRUN(36)->(b)TDIALOG(87)->TDIALOG:DISPLAY(0)->TDIALOG:HANDLEEVENT(880)->DIALOGBOXINDIRECT(0)->TDIALOG:ACTIVATE(270)->MSGRUN(42)->KEYFICHA(902)->(b)BROWSEFICHA(708)->TWINDOW:KEYDOWN(2610)->TCONTROL:KEYDOWN(1019)->TXBROWSE:KEYDOWN(2213)->TWINDOW:HANDLEEVENT(0)->TCONTROL:HANDLEEVENT(1700)->TXBROWSE:HANDLEEVENT(11666)->_FWH(3153)->WINRUN(0)->TMDIFRAME:ACTIVATE(980)->ENTRADA(536)->MAIN(103)
聽 聽
06/07/2016 14:41:54: BRUSH,-1827665397,(b)TRBTN(102)->TRBTN:DISPLAY(0)->TCONTROL:HANDLEEVENT(1666)->TRBTN:HANDLEEVENT(1520)->_FWH(3153)->DIALOGBOX(0)->TDIALOG:ACTIVATE(270)->ASI_FICHA(362)->(b)ASIENTOS(112)->FICHEDITA(1154)->(b)EDITAFICHA(168)->(b)KEYFICHA(902)->(b)MSGRUN(36)->(b)TDIALOG(87)->TDIALOG:DISPLAY(0)->TDIALOG:HANDLEEVENT(880)->DIALOGBOXINDIRECT(0)->TDIALOG:ACTIVATE(270)->MSGRUN(42)->KEYFICHA(902)->(b)BROWSEFICHA(708)->TWINDOW:KEYDOWN(2610)->TCONTROL:KEYDOWN(1019)->TXBROWSE:KEYDOWN(2213)->TWINDOW:HANDLEEVENT(0)->TCONTROL:HANDLEEVENT(1700)->TXBROWSE:HANDLEEVENT(11666)->_FWH(3153)->WINRUN(0)->TMDIFRAME:ACTIVATE(980)->ENTRADA(536)->MAIN(103)
聽 聽
06/07/2016 14:41:54: BRUSH,1544555009,(b)TRBTN(102)->TRBTN:DISPLAY(0)->TCONTROL:HANDLEEVENT(1666)->TRBTN:HANDLEEVENT(1520)->_FWH(3153)->DIALOGBOX(0)->TDIALOG:ACTIVATE(270)->ASI_FICHA(362)->(b)ASIENTOS(112)->FICHEDITA(1154)->(b)EDITAFICHA(168)->(b)KEYFICHA(902)->(b)MSGRUN(36)->(b)TDIALOG(87)->TDIALOG:DISPLAY(0)->TDIALOG:HANDLEEVENT(880)->DIALOGBOXINDIRECT(0)->TDIALOG:ACTIVATE(270)->MSGRUN(42)->KEYFICHA(902)->(b)BROWSEFICHA(708)->TWINDOW:KEYDOWN(2610)->TCONTROL:KEYDOWN(1019)->TXBROWSE:KEYDOWN(2213)->TWINDOW:HANDLEEVENT(0)->TCONTROL:HANDLEEVENT(1700)->TXBROWSE:HANDLEEVENT(11666)->_FWH(3153)->WINRUN(0)->TMDIFRAME:ACTIVATE(980)->ENTRADA(536)->MAIN(103)
聽 聽
06/07/2016 14:41:54: BRUSH,1309673983,(b)TRBTN(102)->TRBTN:DISPLAY(0)->TCONTROL:HANDLEEVENT(1666)->TRBTN:HANDLEEVENT(1520)->_FWH(3153)->DIALOGBOX(0)->TDIALOG:ACTIVATE(270)->ASI_FICHA(362)->(b)ASIENTOS(112)->FICHEDITA(1154)->(b)EDITAFICHA(168)->(b)KEYFICHA(902)->(b)MSGRUN(36)->(b)TDIALOG(87)->TDIALOG:DISPLAY(0)->TDIALOG:HANDLEEVENT(880)->DIALOGBOXINDIRECT(0)->TDIALOG:ACTIVATE(270)->MSGRUN(42)->KEYFICHA(902)->(b)BROWSEFICHA(708)->TWINDOW:KEYDOWN(2610)->TCONTROL:KEYDOWN(1019)->TXBROWSE:KEYDOWN(2213)->TWINDOW:HANDLEEVENT(0)->TCONTROL:HANDLEEVENT(1700)->TXBROWSE:HANDLEEVENT(11666)->_FWH(3153)->WINRUN(0)->TMDIFRAME:ACTIVATE(980)->ENTRADA(536)->MAIN(103)
聽 聽
06/07/2016 14:41:54: BRUSH,-1391457814,(b)TRBTN(102)->TRBTN:DISPLAY(0)->TCONTROL:HANDLEEVENT(1666)->TRBTN:HANDLEEVENT(1520)->_FWH(3153)->DIALOGBOX(0)->TDIALOG:ACTIVATE(270)->ASI_FICHA(362)->(b)ASIENTOS(112)->FICHEDITA(1154)->(b)EDITAFICHA(168)->(b)KEYFICHA(902)->(b)MSGRUN(36)->(b)TDIALOG(87)->TDIALOG:DISPLAY(0)->TDIALOG:HANDLEEVENT(880)->DIALOGBOXINDIRECT(0)->TDIALOG:ACTIVATE(270)->MSGRUN(42)->KEYFICHA(902)->(b)BROWSEFICHA(708)->TWINDOW:KEYDOWN(2610)->TCONTROL:KEYDOWN(1019)->TXBROWSE:KEYDOWN(2213)->TWINDOW:HANDLEEVENT(0)->TCONTROL:HANDLEEVENT(1700)->TXBROWSE:HANDLEEVENT(11666)->_FWH(3153)->WINRUN(0)->TMDIFRAME:ACTIVATE(980)->ENTRADA(536)->MAIN(103)
聽 聽
06/07/2016 14:41:54: BRUSH,-267384355,(b)TRBTN(102)->TRBTN:DISPLAY(0)->TCONTROL:HANDLEEVENT(1666)->TRBTN:HANDLEEVENT(1520)->_FWH(3153)->DIALOGBOX(0)->TDIALOG:ACTIVATE(270)->ASI_FICHA(362)->(b)ASIENTOS(112)->FICHEDITA(1154)->(b)EDITAFICHA(168)->(b)KEYFICHA(902)->(b)MSGRUN(36)->(b)TDIALOG(87)->TDIALOG:DISPLAY(0)->TDIALOG:HANDLEEVENT(880)->DIALOGBOXINDIRECT(0)->TDIALOG:ACTIVATE(270)->MSGRUN(42)->KEYFICHA(902)->(b)BROWSEFICHA(708)->TWINDOW:KEYDOWN(2610)->TCONTROL:KEYDOWN(1019)->TXBROWSE:KEYDOWN(2213)->TWINDOW:HANDLEEVENT(0)->TCONTROL:HANDLEEVENT(1700)->TXBROWSE:HANDLEEVENT(11666)->_FWH(3153)->WINRUN(0)->TMDIFRAME:ACTIVATE(980)->ENTRADA(536)->MAIN(103)
聽 聽
06/07/2016 14:41:54: BRUSH,571476422,(b)TRBTN(102)->TRBTN:DISPLAY(0)->TCONTROL:HANDLEEVENT(1666)->TRBTN:HANDLEEVENT(1520)->_FWH(3153)->DIALOGBOX(0)->TDIALOG:ACTIVATE(270)->ASI_FICHA(362)->(b)ASIENTOS(112)->FICHEDITA(1154)->(b)EDITAFICHA(168)->(b)KEYFICHA(902)->(b)MSGRUN(36)->(b)TDIALOG(87)->TDIALOG:DISPLAY(0)->TDIALOG:HANDLEEVENT(880)->DIALOGBOXINDIRECT(0)->TDIALOG:ACTIVATE(270)->MSGRUN(42)->KEYFICHA(902)->(b)BROWSEFICHA(708)->TWINDOW:KEYDOWN(2610)->TCONTROL:KEYDOWN(1019)->TXBROWSE:KEYDOWN(2213)->TWINDOW:HANDLEEVENT(0)->TCONTROL:HANDLEEVENT(1700)->TXBROWSE:HANDLEEVENT(11666)->_FWH(3153)->WINRUN(0)->TMDIFRAME:ACTIVATE(980)->ENTRADA(536)->MAIN(103)
聽 聽
06/07/2016 14:41:54: BRUSH,1108348180,(b)TRBTN(102)->TRBTN:DISPLAY(0)->TCONTROL:HANDLEEVENT(1666)->TRBTN:HANDLEEVENT(1520)->_FWH(3153)->DIALOGBOX(0)->TDIALOG:ACTIVATE(270)->CONTAEND(596)->(b)ENTRADA(536)->TMDIFRAME:END(262)->TMDIFRAME:SYSCOMMAND(2372)->TMDIFRAME:HANDLEEVENT(0)->_FWH(3153)->WINRUN(0)->TMDIFRAME:ACTIVATE(980)->ENTRADA(536)->MAIN(103)
聽 聽
06/07/2016 14:41:54: ====================================================================================================When I init with Windows seven I have allways this problems
Now I made allways dialog with sources @x,y and try to insert on res only the bitmaps and try to use only 16x16 bmps to have much memory
I not Know why i have that error I not founded a solution and then I use the sources by hand....
the sample test run ok then when i create a big application there is allways error of memory and lose of resources
Angel,
> He ajustado la clase para la correcta eliminaci贸n del Brush (supongo que en las 煤ltimas versiones de fw este bug ya estar谩 solucionado)
C贸mo lo has corregido ?
Puedes mostrar un ejemplo de como usas los botones TRBtn ?
#include "FiveWin.ch"
#include "Ribbon.ch"
function Main()
聽 聽local oDlg, oPopup, oBtn
聽 聽
聽 聽SetResDebug (.T.)
聽 聽DEFINE DIALOG oDlg RESOURCE "Test"
聽 聽REDEFINE RBBTN oBtn ID 100 OF oDlg ACTION MsgInfo( "click" ) ;
聽 聽 聽 PROMPT "Class TRBtn" BITMAP "..\bitmaps\16x16\fivetech.bmp" LEFT
聽 聽ACTIVATE DIALOG oDlg CENTERED
聽 聽
聽 聽CheckRes()
return nil#include <windows.h>
#ifdef __FLAT__
聽 聽1 24 "WinXP/WindowsXP.Manifest"
#endif
#ifdef __64__
聽 聽1 24 "WinXP/WindowsXP.Manifest64"
#endif
Test DIALOG 17, 36, 185, 147
STYLE DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Test" FONT 8, "MS Sans Serif"
{ 聽
聽 聽CONTROL "Test", 100, "TRBTN", WS_CHILD | WS_VISIBLE, 10, 15, 80, 20
聽 聽DEFPUSHBUTTON "OK", 1, 67, 128, 50, 14
}07/10/16 17:42:31: BRUSH,-703592644,(b)TRBTN(102)->TRBTN:DISPLAY(0)->TCONTROL:HANDLEEVENT(1666)->TRBTN:HANDLEEVENT(1520)->_FWH(3153)->DIALOGBOX(0)->TDIALOG:ACTIVATE(270)->MAIN(15)
聽 聽
07/10/16 17:42:31: ====================================================================================================METHOD Destroy() CLASS TRBtn
聽 聽DeleteObject( ::hArrow )
聽 聽
聽 聽if ::oWnd:IsKindOf( "TRBGROUP" )
聽 聽 聽 if ::hBack != ::oWnd:hBack
聽 聽 聽 聽 聽DeleteObject( ::hBack )
聽 聽 聽 endif
聽 聽// Para eliminar el brush si el bot贸n no est谩 en un TRBGROUP - Ajuste Angel - Sigev
聽 聽else
聽 聽 聽DeleteObject( ::hBack)
聽 聽endif
聽 聽
聽 聽DeleteObject( ::hRgn )
聽 聽::FreeBitmaps()
聽 聽if ::oPopup != nil
聽 聽 聽 ::oPopup:End()
聽 聽endif
聽 聽
聽 聽Super:Destroy()
return 0