Pablo
Te copio un texto que alguna vez enviaron en esta lista, no recuerdo si fue
Luis Maria
-----------
El error C0000005 es violación de segmento de memoria. No es privativo de
VFP sino de cualquier proceso de Windows. En nuestro caso, dentro del
proceso VFP se pide escribir espacios de memoria que no le están permitidos,
es decir, direcciones que existen fuera de su propio "marco" de proceso, y
para evitar problemas mayores, el sistema operativo "mata" el proceso
ofensivo sin más preámbulo.
Esto puede deberse a muchas causas, entre otras: indices corruptos, campos
memo corruptos, reportes con contenido binario incorrecto, bases de datos de
metadatos con campos que contienen codigo compilado que está corrupto, etc.
Hasta donde pude ver, los metadatos de VFP, como todos sabemos, son tablas
DBFs, donde la info util para diseño y ejecución está contenida toda en
campos memo. Si estos campos memo se arruinan de alguna forma, digamos,
tenemos un codigo compilado de un evento (columna Object en los .PJX) que se
trunca por la mitad, al ejecutar puede causar estos problemas. Como los
timestamps están bien, el compilador no los regenera cada vez que vos
reconstruís la aplicación.
Si tenes fox viejo, eliminá TODOS los *.spr y los *.spx de los directorios
para forzar al compilador a generarlos de nuevo. Con todas las versiones de
Fox, borrá los .EXEs y las .APPs que generaste, y pedile al administrador de
proyectos que regenere todos los identificadores de símbolos, eso lo hacés
al momento de construir la aplicación desde el generador de proyectos. Como
VFP no genera archivos .spr y .spx, sino que se carga en memoria todo y se
corre desde allí, si un .SCX está corrupto en el campo de codigo objeto en
VFP, quizas podríamos pedirle que regenere esta columna en su totalidad al
pedirle que reconstruya toda la aplicación. Chequeá que el contenido de
properties esté ok, y que el codigo fuente en las tablas .PJX, .SCX esté ok
(es decir, que no esté corrido unos bytes, o que en el codigo fuente tenga
simbolos extraños).
En los datos, si tu aplicación tiene campos memo en las tablas de datos,
podés probar generando otro juego de tablas idénticas, pero no cargues los
campos memo, dejalos vacíos en su totalidad, y corré tu sistema a ver si el
problema persiste. Si todo va bien, es probable que la estructura del .FPT
original esté corrupta. Fijate si podés salvar a mano la data, sino lo mejor
es que recargues las tablas. OJO con los backups, que a veces la corrupción
está en el medio del archivo, por lo tanto las tablas se abren
correctamente, etc. y el error salta cuando el sistema intenta recuperar o
procesar esa parte corrupta.
-----------
Saludos
PabloC
----- Original Message -----
From: Pablo Satelier
To: GUFA List Member
Sent: Wednesday, November 07, 2007 11:17 AM
Subject: [GUFA] Error rarito
Hola gente,.tengo un cliente que cuando le quiero actualizar mi sistema, me
tira un cartel que dice..
Error grave: código de excepción=C0000005 @ 07/11/2007 07:47:24. Archivo de
registro de errores: C:\Archivos de programa\Archivos comunes\Microsoft
Shared\VFP\vfp8rerr.log
Llamado desde - setup line 0 { c:\archivos de programa\digital
fitness pro\difi.exe}
Me resulta muy raro, porque es el mismo sistema con algunas cosas más, pero
es la misma version de VFP, todo igual.
Alquien tiene alguna idea de qué esta pasando?
Desde ya, muchas gracias.
Saludos, Pablo.-
__________ Información de NOD32, revisión 2639 (20071105) __________
Este mensaje ha sido analizado con NOD32 antivirus system
http://www.nod32.com