uLoadObject y Blinker 6.0

Post Reply
manuramos
Posts: 219
Joined: Mon Dec 26, 2005 7:25 pm
Location: Jerez de la Frontera (Spain)

uLoadObject y Blinker 6.0

Post by manuramos »

Tengo un problema con Blinker 6.0 que no tenía con el 4.0
Normalmente guardo diversos arreglos con lSaveObject, pero cuando intento recuperarlos con uLoadObject, con Blinker 6.0, no dá error, pero no recupera los datos guardados.

¿Como puede ser, si con Blinker 4.0 sí los lee?

Algún parámetro de Blinker 6.0 debe de ser el culpable, pero ¿Cúal?
Nos Gusta Programar
User avatar
Antonio Linares
Site Admin
Posts: 42409
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain
Has thanked: 12 times
Been thanked: 48 times
Contact:

Post by Antonio Linares »

Manuel,

has probado a comparar los ficheros salvados en disco para ver si son iguales ó existe alguna diferencia ?
regards, saludos

Antonio Linares
www.fivetechsoft.com
manuramos
Posts: 219
Joined: Mon Dec 26, 2005 7:25 pm
Location: Jerez de la Frontera (Spain)

uLoadObject

Post by manuramos »

Tengo varios programas corriendo. Todos utilizan ficheros salvados con lSaveObject y todos funcionan con Blinker 4.0, y todos fallan con Blinker 6.0 o Blinker 7.0. El caso es que no dan error de lectura, simplemente no cargan los datos.
Y lo unico que falla es uLoadObject, porque los crea bien con lSaveObject, pero esos mismo ficheros, después no lo lee.
Yo creo que pueda ser alguna variable de entorno del Blinker, pero no se cúal. Con Blinker 4.0 va bien, pero me gustaría linklar con alguna version más moderna porque supongo que gestionará mejor los recursos de memoria del ordenador. Y sino pués nada.
Nos Gusta Programar
User avatar
Antonio Linares
Site Admin
Posts: 42409
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain
Has thanked: 12 times
Been thanked: 48 times
Contact:

Post by Antonio Linares »

Manuel,

¿ Que tamaño tienen los ficheros salvados en disco ?

Tambien podrias poner algunas trazas en el código fuente de uLoadObject() y ver en donde exactamente está la diferencia.

¿ Puedes proporcionarnos un ejemplo para probarlo aqui ? gracias.
regards, saludos

Antonio Linares
www.fivetechsoft.com
manuramos
Posts: 219
Joined: Mon Dec 26, 2005 7:25 pm
Location: Jerez de la Frontera (Spain)

Post by manuramos »

ES MUY EXTRTAÑO. PARA PROBAR, HE ESCRITO AL PRINCIPIO DEL PROGRAMA LO SIGUIENTE:

LOCAL aDat := { "Banco1","Banco2","Banco3" }
LOCAL aBanc := {}

MsgAlert(LEN(aDat))

MsgAlert(LEN(aBanc))

lSaveObject(aDat,".\Datos\Prueba.Dat")

SysRefresh()

aBanc := uLoadObject(".\Datos\Prueba.Dat")

MsgAlert(LEN(aBanc))

ME DEVUELVE EL SIGUIENTE RESULTADO:

3
0
3

O SEA TODO BIEN, ME LO HA ABIERTO. SIN EMBARGO EN OTRO PUNTO DEL PROGRAMA, DENTRO DE UNA FUNCION, HE HECHO:

LOCAL aBanc := {}

aBanc := uLoadObject(".\Datos\Prueba.Dat")
SysRefresh()
MsgAlert(LEN(aBanc))

Y ME HA DADO ERROR DEL "LEN" AL EJECUTAR EL MsgAlert. COMO SI aBanc FUERA NIL.

CON "LOCAL abanc" A SECAS O CON
LOCAL aBanc := uLoadObject(".\Datos\Prueba.Dat")
TAMPOCO VA.

PERO SOLO SI LO ENLAZO CON BLINKER 6.0 O BLINKER 7.0
CON BLINKER 4.0 VA BIEN
PUEDE SER ALGUN TIPO DE PROBLEMA DE ALOCACION DE LA MEMORIA
Nos Gusta Programar
Post Reply