Page 1 of 1

Consulta básica (Solucionado-bug clase twbrowse Hernán)

Posted: Wed Aug 22, 2007 11:32 pm
by metaldrummer
Hola:
Aquí estoy de nuevo y después de dos años de para en la programación, se nota definitivamente.
A ver:
utilizo xmate+xharbour (desde cvs) y tengo algo tan simple como esto:

Code: Select all

REQUEST DBFCDX
RddSetDefault( "DBFCDX")
aDbf:={}
Aadd(aDbf, {"PASO1", "C", 10, 0})
Aadd(aDbf, {"PASO2", "C", 10, 0})
dbCreate( "PASO.DBF", aDbf, "DBFCDX")
USE PASO EXCLUSIVE NEW VIA "DBFCDX"
SELECT PASO
dbGotop()
MsgInfo( "browse()")
Browse()
CLOSE DATABASE
La rutina llega hasta el MsgInfo() y luego se cuelga.
Esto me tiene entrampado para utilizar el browse de Hernán.
Salduos y mil gracias
David Lagos S.
Coquimbo-Chile

Posted: Wed Aug 22, 2007 11:57 pm
by Antonio Linares
David,

Cambia Browse() por WBrowse() ó simplemente añade #include "FiveWin.ch" al principio

Posted: Thu Aug 23, 2007 1:40 am
by metaldrummer
Antonio:
Tengo puesto #include "fivewin.ch"

y no resultó tampoco con wbrowse().
el programa se cuelga.
Además no entiendo porqué no me aparece error alguno, ni la ventana ni genera el error.log
Saludos
David

Posted: Thu Aug 23, 2007 8:56 am
by Antonio Linares
David,

Porque estas llamando a la función browse para modo consola que proporciona Harbour, por eso se cuelga.

FiveWin.ch cambia Browse() por WBrowse(), y la función WBrowse() debe mostrarte un browse básico en modo Windows

Prueba a no llamar a Browse() y no debe colgarse

Posted: Thu Aug 23, 2007 2:07 pm
by metaldrummer
Antonio Linares wrote:David,

Porque estas llamando a la función browse para modo consola que proporciona Harbour, por eso se cuelga.

FiveWin.ch cambia Browse() por WBrowse(), y la función WBrowse() debe mostrarte un browse básico en modo Windows

Prueba a no llamar a Browse() y no debe colgarse
Antonio:
No me hice entender.
No utilizo nada en modo consola.
Sencillamente el simple hecho de hacer un "USE" a una .dbf y realizar un wbrowse() se cuelga.
Vuelvo a preguntar: ¿a qué se puede deber que al presentarse un problema no aparece la ventana de error y no genera el error.log?
Estoy utilizando xmate. Además me funciona perfectamente la twbrowse de hernán.
Saludos y muchas gracias.
David

P.D.:Adjunto imágenes.
XMate: Librerías que estoy utilizando
Image
Image

XMate: Como tengo definido mi proyecto
Image

Hago algo tan simple como esto y se cuelga
Image

Posted: Thu Aug 23, 2007 2:40 pm
by Antonio Linares
David,

Tu código funciona aqui perfectamente. Prueba a no enlazar el Browse de Hernan.

Si no aparece error y la aplicación se cuelga, es que está en un bucle ó usando Inkey() de [x]Harbour.

Posted: Thu Aug 23, 2007 3:10 pm
by metaldrummer
Antonio Linares wrote:David,

Tu código funciona aqui perfectamente. Prueba a no enlazar el Browse de Hernan.

Si no aparece error y la aplicación se cuelga, es que está en un bucle ó usando Inkey() de [x]Harbour.
Efectivamente es un bug en la classe de Hernán.
Hice lo siguiente:

Code: Select all

TRY
   WBrowse()
CATCH oError
   MsgStop( oError:Description)
END
Con la classe de Hernán arroja el CATCH oError "Undefined Function"
Sacando la classe de Hernán funciona perfecto.
Mil Gracias nuevamente
David Lagos S.
Coquimbo-Chile

Posted: Thu Aug 23, 2007 7:50 pm
by Patricio Avalos Aguirre
Yo utilizo el browse de Hernan y no he tenido ningun problema

puede ser el orden de las librerias

en mi caso la tengo al principio...

Code: Select all

...
TWBRW32 + //libreria de hernan...
HbTDbf +
c:\Fwh\lib\FiveHX.LIB +
c:\Fwh\lib\FiveHc.LIB +
Funlib32 +
FileXls +
vBarH +
vBoxH +
SBrowseH  +
TBtnGet32 +
c:\harbour\lib\rtl.lib	 +
c:\harbour\lib\vm.lib    +
c:\harbour\lib\gtGui.lib +
c:\harbour\lib\lang.lib  +
c:\harbour\lib\macro.lib +
c:\harbour\lib\rdd.lib   +
c:\harbour\lib\dbfcdx.lib+
c:\harbour\lib\dbffpt.lib+
c:\harbour\lib\hbsix.lib +
c:\harbour\lib\common.lib+
c:\harbour\lib\pp.lib    +
c:\harbour\lib\rddads.lib+
c:\harbour\lib\Ace32.lib +
c:\borland\bcc55\lib\cw32.lib +
c:\borland\bcc55\lib\import32.lib,, +
recurso\wcta.res recurso\toolbar1.res

Posted: Fri Aug 24, 2007 7:38 pm
by carlos vargas
Podria ser un problema de opcodes diferentes

el ejemplo que muestras es muy simple por lo que no hay probabilidad de fallos :-)

por lo que solamente queda esa posibilidad.

salu2
carlos vargas