Ver Mensaje Individual
  #2  
Antiguo 30-09-2015
Avatar de Ñuño Martínez
Ñuño Martínez Ñuño Martínez is offline
Moderador
 
Registrado: jul 2006
Ubicación: Ciudad Catedral, Españistán
Posts: 6.025
Reputación: 27
Ñuño Martínez Tiene un aura espectacularÑuño Martínez Tiene un aura espectacular
Hace mucho que no manejo Dbf, así que disculpa si me lío.

Podría ser que algún proceso marcara la tabla como abierta y olvidara quitar la marca al terminar. La cabecera de los archivos DBF tienen una marca para indicar que se está trabajando con ella, y si al abrir un archivo se encuentra dicha marca, entonces sólo permite operaciones de lectura. Ahora no sé si alguna herramienta como FoxPro o similar permita modificar dicha marca. También podrías modificarla directamente, haciendo un programa ex-profeso o mediante alguna herramienta de gestión de archivos binarios (como GHex), pero no lo recomiendo por si afecta a la integridad del archivo (si te equivocas de octeto, la lías parda).

Otra posible razón podría ser que el archivo de la tabla ya lo abrió otro proceso, programa o handle diferente y hasta que no se cierre no podrás acceder a él. Un problema de Windows es que siempre te bloquea los archivos cuando se abren, por lo que sólo un handle puede usarlo cada vez. Si ningún proceso lo tiene abierto, entonces es posible que algún proceso lo abriera y después no lo cerrara, dejándolo colgado. Personalmente, nunca me había pasado esto desde los tiempos de Windows 98, ya que con XP (como mínimo) al cerrar un programa se cierran todos los archivos y se liberan los handles correspondientes independientemente de lo que diga la aplicación. Lo mismo pasa al cerrar la sesión del sistema operativo.
Responder Con Cita