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.

GPF al utilizar la libreria hbvmmt

Foro público de Xailer en español
Responder
Avatar de Usuario
XeviCOMAS
Mensajes: 586
Registrado: Sab Mar 12, 2011 8:16 pm

GPF al utilizar la libreria hbvmmt

Mensaje por XeviCOMAS »

Con los cambios que estoy metido últimamente, me he decicido por utilizar el multihilo...

Para compilar, he sacado la libreria hbvm y he añadido la hbvmmt en mi proyecto... siguiendo el sample Multithread de Xailer.
Bien, la sorpresa me la encontré cuando esporádicamente me lanzava un error en un form de mi aplicación MDI.
Hice pruebas, muchas, aislé el error, hasta quedarme con un form vacío de código i SOLO con controles.
Además, este form lo he incluido en el Sample de Xailer MDISample1, para que tengais por donde "pillar" el GPF o error, que es esporádico como dije, y sólo se produce en abrir el form de prueba añadido en arrancar el exe e ir a abrir el form. Si éste se abre, se abre siempre. Cerrar la aplicación si éste se a abierto correctamente y repetir (abrir aplicación, abrir form prueba, cerrar aplicación) hasta que se produzca el error. Si no ocurre a la primera, en unas pocas repeticiones saltará el GPF. A veces puede saltar siempre, com en otras le cuesta más.

Adjunto el proyecto
MDISample1.zip
GPF usando lib hbvmmt
(5.22 KiB) Descargado 109 veces
Un Saludo,
Xevi.
Un Saludo,
Xevi.
Avatar de Usuario
XeviCOMAS
Mensajes: 586
Registrado: Sab Mar 12, 2011 8:16 pm

Re: GPF al utilizar la libreria hbvmmt

Mensaje por XeviCOMAS »

El error se produce metiendo un TFolderPage en un Formulario.

He eliminado TODOS los controles del Form quedándome con tan solo el FolderPage...
Bien, pues ahí el error.
He eliminado el FolderPage y compilado... NUNCA salta el GPF.
He añadido un FolderPage NUEVO en el Form de prueba...
Y voalá!!! el GPF se produce!!!

Si no hay solución, intentaré cambiar los FolderPage de mi aplicación, pero creo que debería de buscarse una solución.

Por lo visto TFolderPAge y la lib hbvmmt no son compatibles.


Gracias.

Un Saludo,
Xevi.
Un Saludo,
Xevi.
Avatar de Usuario
XeviCOMAS
Mensajes: 586
Registrado: Sab Mar 12, 2011 8:16 pm

Re: GPF al utilizar la libreria hbvmmt

Mensaje por XeviCOMAS »

Ah... estoy utilizando Xailer 3.3.1.

No se si habrá solución para arreglarlo en esta versión de Xailer.
Para solucionar el problema, de momento, como solo me afecta a un par de forms...
lo que haré es utilizar TTabCtrl+Tpanel en lugar de TFolder.
Es un poco mas laborioso y menos agradable de confeccionar, pero por lo menos salvaré el obstáculo.


Un Saludo,
Xevi.
Un Saludo,
Xevi.
Avatar de Usuario
XeviCOMAS
Mensajes: 586
Registrado: Sab Mar 12, 2011 8:16 pm

Re: GPF al utilizar la libreria hbvmmt

Mensaje por XeviCOMAS »

El error o GPF en una imagen...
Captura.JPG
Captura.JPG (29.63 KiB) Visto 3127 veces
Un Saludo,
xevi.
Un Saludo,
Xevi.
Avatar de Usuario
bingen
Mensajes: 565
Registrado: Lun Jul 07, 2014 8:17 pm
Ubicación: Bilbao
Contactar:

Re: GPF al utilizar la libreria hbvmmt

Mensaje por bingen »

Siento confirmarlo, yo también intenté usar la tecnología multihilo y me daba ese error de forma totalmente aleatoria, incluso quitando la programación multihilo y solo dejando la librería hbvmmt linkada seguia pasando.

Ahora comentas que pasa con los folderpages y es posible que así sea, pero yo no puedo quitarlos por que todas mis aplicaciónes son un puro folderpage desde el inicio hasta el final.

A ver si esto tiene solución por parte de los gurus de Xailer.

Salu2.
BiSoft Desarrollo de software profesional
http://www.bisoft.es
Avatar de Usuario
XeviCOMAS
Mensajes: 586
Registrado: Sab Mar 12, 2011 8:16 pm

Re: GPF al utilizar la libreria hbvmmt

Mensaje por XeviCOMAS »

Bingen,

bien, esperemos tenga arreglo.
Como bien dices, sólo linkando con la libreria hbvmmt ya se reproduce el error (aleatorio) en el momento de abrir un form y éste lleva un TFolderPage.

Yo lo he arreglado con un TabCtrl junto con Panels, y chuta perfectamente. Si, es mas laborioso a la hora de diseñar, pero el resuktado final es el mismo.
Lo que me interesaba era el multihilo, y con este "apaño" puedo utilizarlo, probarlo... va perfecto, pues mientras hago una consulta un servidor central en mi host, la aplicación no se entera y sigue trabajando como si nada ocurriera.


Un Saludo,
Xevi.
Un Saludo,
Xevi.
Avatar de Usuario
jfgimenez
Site Admin
Mensajes: 5706
Registrado: Lun Abr 06, 2015 8:48 pm
Contactar:

Re: GPF al utilizar la libreria hbvmmt

Mensaje por jfgimenez »

Xevi,

muchas gracias por acotar el problema. Vamos a revisarlo lo antes posible. Esperemos que sea sólo en los folder y no encontremos ningún problema más profundo, porque con la MT nunca se sabe...
José F. Giménez
[Equipo de Xailer / Xailer team]
http://www.xailer.com
http://www.xailer.info
Avatar de Usuario
ramonzea
Mensajes: 130
Registrado: Mar Sep 15, 2015 6:42 am
Ubicación: México
Contactar:

Re: GPF al utilizar la libreria hbvmmt

Mensaje por ramonzea »

Yo estoy teniendo un detalle, que al parecer no se sabe de donde salió.
He compilado todos mis proyectos y clases modificadas, y las que he obtenidos por algunos del foro, y me sale este extraño error:

***************************** Registro de errores *****************************
Exe: C:\Sistemas\Win\InventarioZ\Clientes\Basico\InventarioZ.exe
Version: 1.3.6.7
Build: 7
User name: Ramón Zea
Computer name: ZEASOFTALIENWRE
Fecha: 02/10/2015
Hora: 23:22:51
Memoria libre: 2622856
Area actual: 46
------------------------- Información del compilador --------------------------
Versión Xailer: Xailer 4.0.2
Compilador: Harbour 3.2.0dev (r1503071916)
Compilador C/C++: MinGW GNU C 4.9.2 (32-bit)
Plataforma: Windows 7 6.1.7601 Service Pack 1
----------------------- Información detallada del error -----------------------
Subsistema: TDBBrowse
Código de error: 1001
Estado: .F.
Descripción: Error de argumento
Operación: NTOP
Argumentos: [ 1] = Tipo: O Valor:
Fichero:
Código error SO: 0

Pila de llamadas:
__EINSTVAR53 (0)
TDBBROWSE:_NTOP (0)
TDBBROWSE:NEW (0)
TPRODUCTOS:CREATEFORM (105)
TPRODUCTOS:NEW (121)
SCIPRINCIPAL:LAUNCH (941)
(b)SCIPRINCIPAL_TOOLMENUBAR (558)
TTOOLBUTTON:ONCLICK (0)
(b)XTOOLBUTTON (41)
TTOOLBUTTON:CLICK (0)
TTOOLBAR:COMMAND (404)
TREBAR:WMCOMMAND (275)
RUNFORM (0)
TAPPLICATION:RUN (287)
MAIN (32)


El error es aquí:

WITH OBJECT ::oFolder1 := TFolder():New( Self )
:::::::
END

WITH OBJECT ::oTabIndexs := TTabCtrl():New( ::oFolderPage1 )
:::::::::::::
END

WITH OBJECT ::oDBBrowse1 := TDBBrowse():New( ::oTabIndexs ) <-----aquí se dispara el error


Agradezco cualquier punto de vista, ayuda, link, tip, chisme, etc.
Saludos.
Ramón Zea
http://www.zeasoftware.com.mx
Avatar de Usuario
ignacio
Site Admin
Mensajes: 9253
Registrado: Lun Abr 06, 2015 8:00 pm
Ubicación: Madrid, Spain
Contactar:

Re: GPF al utilizar la libreria hbvmmt

Mensaje por ignacio »

Ya respondido en otro foro.

Un saludo
Ignacio Ortiz de Zúñiga
[Equipo de Xailer / Xailer team]
https://www.xailer.com
Responder