Mi App se cuelga (SOLUCIONADO, bueno eso creo)

Re: Mi App se cuelga

Postby Armando » Sun Nov 15, 2015 5:00 pm

Lucas:

Gracias por el interés, no, no genera archivo log alguno.

Saludos
SOI, s.a. de c.v.
estbucarm@gmail.com
http://www.soisa.mex.tl/
http://sqlcmd.blogspot.com/
Tel. (722) 174 44 45
Carpe diem quam minimum credula postero
User avatar
Armando
 
Posts: 3061
Joined: Fri Oct 07, 2005 8:20 pm
Location: Toluca, México

Re: Mi App se cuelga

Postby Armando » Sun Nov 15, 2015 5:19 pm

Karinha:

Probé tu sugerencia pero no es la solución.

Gracias por el apoyo.

Saludos
SOI, s.a. de c.v.
estbucarm@gmail.com
http://www.soisa.mex.tl/
http://sqlcmd.blogspot.com/
Tel. (722) 174 44 45
Carpe diem quam minimum credula postero
User avatar
Armando
 
Posts: 3061
Joined: Fri Oct 07, 2005 8:20 pm
Location: Toluca, México

Re: Mi App se cuelga

Postby Armando » Sun Nov 15, 2015 10:34 pm

Amigos, Cristóbal y Antonio:

Con la sugerencia de Cristóbal ya me esta creando dos ficheros .TXT
Res.Log y Resources.Txt, este es el contenido de ambos

Res.Log (solo una porción pues es muy largo)
Code: Select all  Expand view

 ./,)/+-***
BMP
  */')0-)//
BRUSH
 1711608478
BMP
 /**0*//00.
BMP
  319099923
BMP
 1241847795
BMP
  486871505
BMP
  134550446
BMP
  '
).),+-).
BMP
 //0*'**0+-
BMP
 /()(-(*)0.
FONT
  873469951
BRUSH
 //)-),-*.+
FONT
  402987011
BMP
   67442704
BMP
  772085772
 


Resource.Txt
Code: Select all  Expand view

15/11/2015 16:30:14: DeleteObject( ::hFont ) failed from TFont:End()    -1173743625 0   .T. 
 


A ver si con esto encontramos el problema

Saludos
SOI, s.a. de c.v.
estbucarm@gmail.com
http://www.soisa.mex.tl/
http://sqlcmd.blogspot.com/
Tel. (722) 174 44 45
Carpe diem quam minimum credula postero
User avatar
Armando
 
Posts: 3061
Joined: Fri Oct 07, 2005 8:20 pm
Location: Toluca, México

Re: Mi App se cuelga

Postby cnavarro » Sun Nov 15, 2015 11:22 pm

Armando
No te genera el fichero CheckRes.txt ?

Que version de Fw estas usando ?

Estas utilizando la function DeleteObject ?

Realizas alguna asignacion como .....:oFont := oFontMia ?
Cristobal Navarro
Hay dos tipos de personas: las que te hacen perder el tiempo y las que te hacen perder la noción del tiempo
El secreto de la felicidad no está en hacer lo que te gusta, sino en que te guste lo que haces
User avatar
cnavarro
 
Posts: 6500
Joined: Wed Feb 15, 2012 8:25 pm
Location: España

Re: Mi App se cuelga

Postby Armando » Sun Nov 15, 2015 11:38 pm

Cristóbal:

No te genera el fichero CheckRes.txt ? No, solo los dos antes mencionados

Que version de Fw estas usando ? FWH 0810 con xHarbour build 1.1.0 Intl. (SimpLex) (Rev. 6195)

Estas utilizando la function DeleteObject ? No, en ninguna parte de mi código

Realizas alguna asignacion como .....:oFont := oFontMia ? No, solo el DEFINE FONT .....
DEFINE FONT oFont NAME "MS Sans Serif" SIZE 0,-10
DEFINE FONT oFont1 NAME "Arial" SIZE 0,-28 BOLD
DEFINE FONT oFont2 NAME "MS Sans Serif" SIZE 0,-14 BOLD
DEFINE DIALOG oDlg RESOURCE "UpdCpa" OF oWnd ICON oIcono FONT oFont;
TITLE "Detalle de la cotización" BRUSH oApp:oBrush TRANSPARENT


Este es el código de salida
Code: Select all  Expand view

STATIC FUNCTION Salir( )
   IF MsgNoYes( "Seguro desea salir de la aplicación ?", oApp:cAplicacion )
      SET RESOURCES TO
      WinHelp( GetHelpFile( ), 2 )
      ResAllFree( )
      MEMORY( - 1 )
      oApp:oCon:Close()

       IF File( "checkres.txt" )
       FErase( "checkres.txt" )
    ENDIF

    CheckRes()

   ELSE
      RETURN ( .F. )
   ENDIF
RETURN ( .T. )
 


En un principio tenia puesto el código del CheckRes() antes de SET RESOURCES TO
y los ficheros que mostré son lo que me genera, ahora lo he movido como se ven arriba
y el fichero Res.Log solo tiene líneas como

0
BMP
0
BRUSH
0
BMP
0
BMP
0
BMP
0
BMP
0
BMP
0
BMP
0
BMP
0
BMP
0
FONT
0
BRUSH

Y el fichero RESOURCE.TXT
15/11/2015 16:30:14: DeleteObject( ::hFont ) failed from TFont:End() -1173743625 0 .T.
15/11/2015 17:44:17: DeleteObject( ::hFont ) failed from TFont:End() -1693837186 0 .T.

Saludos
SOI, s.a. de c.v.
estbucarm@gmail.com
http://www.soisa.mex.tl/
http://sqlcmd.blogspot.com/
Tel. (722) 174 44 45
Carpe diem quam minimum credula postero
User avatar
Armando
 
Posts: 3061
Joined: Fri Oct 07, 2005 8:20 pm
Location: Toluca, México

Re: Mi App se cuelga

Postby hmpaquito » Mon Nov 16, 2015 8:14 am

Hola,

¿ Puedes probar a poner un memowrit("mierror.txt", e:description) al principio de la funcion errordialog() que esta en el fuente errsysw.prg ?
Despues que se produzca el error chequea la existencia de mierror.txt.

Se trataria de intentar cazar, si existe, un error tipico, que se convierte en atipico en la funcion erordialog(), si es redundante.

salu2
hmpaquito
 
Posts: 1482
Joined: Thu Oct 30, 2008 2:37 pm

Re: Mi App se cuelga

Postby Antonio Linares » Mon Nov 16, 2015 8:29 am

Aún no lo he probado pero este código podría entrar en un bucle infinito que colgase la aplicación:

ACTIVATE WINDOW oWnd ON RESIZE ( IF( oWnd<>NIL, oWnd:SETSIZE(oDlg:nWidth,oDlg:nHeight+29), ));
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Antonio Linares
Site Admin
 
Posts: 41315
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain

Re: Mi App se cuelga

Postby Antonio Linares » Mon Nov 16, 2015 8:50 am

Este ejemplo se queda colgado en Windows 10:

Code: Select all  Expand view
#include "FiveWin.ch"

function Main()

   local oWnd

   DEFINE WINDOW oWnd

   ACTIVATE WINDOW oWnd ON RESIZE oWnd:SetSize( oWnd:nWidth + 1, oWnd:nHeight )

return nil
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Antonio Linares
Site Admin
 
Posts: 41315
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain

Re: Mi App se cuelga

Postby Antonio Linares » Mon Nov 16, 2015 8:51 am

En un evento estamos generando una acción que vuelve a generar el mismo evento.

Y esto produce el bucle infinito que cuelga la aplicación
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Antonio Linares
Site Admin
 
Posts: 41315
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain

Re: Mi App se cuelga

Postby Armando » Mon Nov 16, 2015 3:53 pm

Antonio:

Gracias por tu interés en el caso, te comento algunas cosas, no dudo que la aplicación
se quede colgada en W10, pero yo estoy usando W8.1, tengo varias aplicaciones con
el mismo código y hasta ahora ninguna se queda colgada, voy a tomar en cuenta tu
sugerencia para W10, y por último, la aplicación se queda colgada después de entrar
y salir del PRG tres o cuatro veces por lo que pienso que son recursos no destruidos,
si fuera el caso de tu prueba la aplicación se quedaría colgada desde la primera vez
que entramos.

Saludos
SOI, s.a. de c.v.
estbucarm@gmail.com
http://www.soisa.mex.tl/
http://sqlcmd.blogspot.com/
Tel. (722) 174 44 45
Carpe diem quam minimum credula postero
User avatar
Armando
 
Posts: 3061
Joined: Fri Oct 07, 2005 8:20 pm
Location: Toluca, México

Re: Mi App se cuelga

Postby lubin » Mon Nov 16, 2015 4:35 pm

Armando,

Una vez algo se comia mi memoria, y eran el uso de arreglos, resultaba que usaba dentro de un bucle la instruccion AADD(v_arreglo, xValor) pero me olvidaba que debia reiniciar v_arreglo:={} cada vez que reiniciaba el Blucle (dowhile) , al final me quedaba si memoria y el proceso cuando se ejecuta se va hacendo mas lento, lento leeento..y me salia ese famoso ejemplo que mencionas.

Comparto eso quizas te de alguna idea... mira tus array-

Saludos
Lubin
User avatar
lubin
 
Posts: 439
Joined: Fri Dec 09, 2005 12:41 am
Location: Lima, Peru

Re: Mi App se cuelga (SOLUCIONADO, bueno eso creo)

Postby Armando » Mon Nov 16, 2015 4:59 pm

Cristóbal, Antonio, Paco Horta y demás amigos del foro:

Me parece que hemos encontrado al causante del problema gracias a todas
las sugerencias y consejos de ustedes pero principalmente a la sugerencia
de Paco Horta (Te ganaste otro chiste) :D

Trataré de explicar la solución por si a alguien más le sirve y si me ayudan
a entender el porque se generaba el problema.

Pensando ¿qué podría ser el problema me puse a razonar, si en todas mis
aplicaciones utilizo la misma técnica de codificación por qué en esta se
queda colgada y en las otras no sucede lo mismo????

Buscando la diferencia entre una y otra me di cuenta que en la del problema
estoy usando un brush y en las otras no, pero el problema no se queda ahí
sino en la forma en que estoy definiendo el brush.

Código con error:
Code: Select all  Expand view

En el MAIN (código abreviado)
FUNCTION Main()

   oApp := TAplicacion()
.....
.....
.....

CLASS TAplicacion
   DATA cUsuario            INIT ""
   DATA cRazonSocial        INIT "EMPRESA NO REGISTRADA, S.A. DE C.V."
   DATA cVersion            INIT "Versión 1.0M0"
   DATA oBrush              INIT NIL
 ....
....
ENDCLASS

Y en el PRG del problema tengo esto:

MEMVAR oApp (Me traigo muchas variables de la clase, entre otras el BRUSH)

FUNCTION SicWin1a(oWindow)
...
        DEFINE DIALOG oDlg RESOURCE "BrwCpa" OF oWnd FONT oFont ICON oIcono;
            BRUSH oApp:oBrush TRANSPARENT
....
....
RETURN(.T.)
 


Observen que el BRUSH del dialogo viene definido en la clase oApp, esto lo hice así pensando
en ahorrarme código pues solo defino el brush una sola vez y lo uso en tantos PRG como sea
necesario y si debo cambiar el brush pues solo tendría que cambiar una sola línea ("El flojo
y el mezquino andan dos veces el camino"), todo parecía y funcionaba bien, perooooo.....
se presentó el problema del cuelgue de la aplicación :shock:

En un principio, a sugerencia de Paco Horta, quite el brush de todos los PRGs excepto en el
MAIN, ahí deje la definición del BRUSH en la clase, y el problema parecía solucionarse pero
volvió a aparecer.

LA SOLUCION ???, la solución fue quitar el BRUSH de todos los PRG e inclusive del MAIN sobre
todo quitarlo de la clase.

He probado entrando y saliendo del PRG problema varias veces, hasta 10, y hasta ahora ya no
se cuelga la aplicación. :D

Antonio, también estoy aplicando solución al problema que encontraste pues más tarde o más
temprano irremediablemente pasaremos a W10, con el siguiente cambio

Code: Select all  Expand view

        ACTIVATE DIALOG oDlg NOWAIT ON INIT oDlg:MOVE(0,0) VALID ! GetASyncKey(VK_ESCAPE)
    ACTIVATE WINDOW oWnd ON INIT (IF( oWnd <> NIL, oWnd:SETSIZE(oDlg:nWidth,oDlg:nHeight+29), ),;
        (LaBarra(oWnd,oDlg,oBrw,oBrx,oBry),oBrw:SetFocus())) VALID Cierra()
 


Saludos y gracias a todos por tan invaluable ayuda.
SOI, s.a. de c.v.
estbucarm@gmail.com
http://www.soisa.mex.tl/
http://sqlcmd.blogspot.com/
Tel. (722) 174 44 45
Carpe diem quam minimum credula postero
User avatar
Armando
 
Posts: 3061
Joined: Fri Oct 07, 2005 8:20 pm
Location: Toluca, México

Re: Mi App se cuelga (SOLUCIONADO, bueno eso creo)

Postby Armando » Tue Nov 17, 2015 4:45 pm

Lubin:

No había visto tu sugerencia, gracias por tu aportación

Tengo algunos arreglos como los que tú mencionas pero al entrar
los inicializo con

acSol := {}
anSol := {}


Saludos
SOI, s.a. de c.v.
estbucarm@gmail.com
http://www.soisa.mex.tl/
http://sqlcmd.blogspot.com/
Tel. (722) 174 44 45
Carpe diem quam minimum credula postero
User avatar
Armando
 
Posts: 3061
Joined: Fri Oct 07, 2005 8:20 pm
Location: Toluca, México

Previous

Return to FiveWin para Harbour/xHarbour

Who is online

Users browsing this forum: Google [Bot] and 85 guests