Buenas Tardes:
Hace un par de días tengo algunos clientes que me estan llamando con el siguiente error
FWDISPBEGI (0) Error no recuperable 332: Desbordamiento de la memoria para matrices/cadenas
FWDISPBEGI 0000
TGETL:DISPBEGIN 0000
TGETL:PAINT 0000
(b)TGET 0000
TGETL:HANDLEEVEN 0000
DIALOGBOXI 0000
TDIALOGL:ACTIVATE 0000
Alguien tiene idea de que puede ser.
Gracias.
Leonor
error 332
- Antonio Linares
- Site Admin
- Posts: 37481
- Joined: Thu Oct 06, 2005 5:47 pm
- Location: Spain
- Contact:
Leonor,
Tienes que plantearte pasar la aplicación a 32 bits usando FWH y Harbour/xHarbour, ya que el error 332 que te aparece es que no tiene suficiente memoria disponible para cadenas/arrays en 16 bits.
Ten en cuenta que una aplicación de 16 bits en Clipper sólo dispone de 64 Ks para arrays y cadenas y rapidamente puedes agotar ese tamaño
Tienes que plantearte pasar la aplicación a 32 bits usando FWH y Harbour/xHarbour, ya que el error 332 que te aparece es que no tiene suficiente memoria disponible para cadenas/arrays en 16 bits.
Ten en cuenta que una aplicación de 16 bits en Clipper sólo dispone de 64 Ks para arrays y cadenas y rapidamente puedes agotar ese tamaño
Antonio:
Estamos en proceso de migración a Harbour, mientras tanto, qué pista nos podés dar para que "salvemos las papas" por ahora, en pocos meses ya estamos en 32bits.
¿Vos decís que un array determinado se quedó sin espacio para crecer? o el espacio total de arrays es 64k ?
Ya que no tenemos ( o no sabemos como hacer andar bien ) debugger con fivewin, cómo podríamos pescar que array da el error para ver si _ algo la lógica?
Mil gracias.
Ricardo Bécares.-
Estamos en proceso de migración a Harbour, mientras tanto, qué pista nos podés dar para que "salvemos las papas" por ahora, en pocos meses ya estamos en 32bits.
¿Vos decís que un array determinado se quedó sin espacio para crecer? o el espacio total de arrays es 64k ?
Ya que no tenemos ( o no sabemos como hacer andar bien ) debugger con fivewin, cómo podríamos pescar que array da el error para ver si _ algo la lógica?
Mil gracias.
Ricardo Bécares.-
- Antonio Linares
- Site Admin
- Posts: 37481
- Joined: Thu Oct 06, 2005 5:47 pm
- Location: Spain
- Contact:
Ricardo,
Si usais muchas variables públicas, una solución es cambiarlas por una única (ó varias) variables tipo array:
public uno, dos, tres, cuatro, cinco, seis
se cambiaría a:
public aVars
y aVars se haría igual a { <valor de uno>, <valor de dos>, ..., etc }
Si generas un error en la aplicación (por ejemplo, escribe x++) se creará un fichero error.log y al final ves el consumo de variables que tiene la aplicación
Si usais muchas variables públicas, una solución es cambiarlas por una única (ó varias) variables tipo array:
public uno, dos, tres, cuatro, cinco, seis
se cambiaría a:
public aVars
y aVars se haría igual a { <valor de uno>, <valor de dos>, ..., etc }
Si generas un error en la aplicación (por ejemplo, escribe x++) se creará un fichero error.log y al final ves el consumo de variables que tiene la aplicación