FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
Error "Table is busy"
Hola:
A ver si a alguien le salido este error: Al actualizar a Windows10 me da este error que con windows7 no salia (no he cambiado nada del código) Error "Table Is busy" Llevo usando el mismo código con diferentes versiones de Windows y nunca había tenido problema, quería pasarme de nuevo a Windows7, pero parece ser que una vez pasados 30 días ya no es posible. Datos.Table2.Active:=False; Datos.Table2.Exclusive:=True; Datos.Table2.Active:=True; Datos.Table2.EmptyTable; Utilizo Delphi 5 con Windows10 y el BDE con tablas DBase Agradeceria cualquier opinión al respecto. |
#2
|
||||
|
||||
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. |
#3
|
|||
|
|||
Error "Table is busy"
Hola:
Ante todo gracias por responder tan rápido. He revisado si había modificado código en relación con esa tabla, pero además de ese error con esa tabla me da el mismo error con otra que se usa muy exporadicamente, por lo cual sigo pensando que es problema de Windows10 y sus privilegios para modificar ficheros. Como ya comentaba en el mensaje anterior, no he cambiado el código que lleva escrito mas de 14 años en ninguno de los sitios en que da error, y coincide que el error les ha salido a usuarios que les hecho alguna modificación a partir de actualizarme a Windows10. |
#4
|
||||
|
||||
Ahora que lo re-leo, creo que Windows 10 está todavía en fase beta, de ahí que lo anden regalando. Yo no suelo actualizar mi sistema operativo (sea Windows, Linux, Android o lo que sea) hasta como mínimo un año después de su primera publicación. Suele ahorrarme dolores de cabeza.
Pero sí, es posible que se deba a los permisos de Windows 10. |
#5
|
||||
|
||||
Cita:
|
#6
|
|||
|
|||
Hola:
Para los que le surja el error esta es la forma en que yo lo he arreglado: Datos.table2 es la tabla MOVIMIEN.DBF Por lo que se ve el error sale al establecer un vínculo del Query1 con la tabla, por lo que creo una tabla TEMP.DBF para que coja los datos de ella en lugar de cogerlos de la tabla original. Por lo que se ve esto se debe a un bug de Windows10, que por otra parte estoy contento con el, especialmente porque es increiblemente rápido al arrancar el ordenador. Saludos a todos. Última edición por ecfisa fecha: 23-10-2015 a las 01:25:22. Razón: Etiquetas Delphi |
#7
|
||||
|
||||
Hola pelambres.
Por favor cuando incluyas código en tus mensaje usa etiquetas para darle más legibilidad: Saludos
__________________
Daniel Didriksen Guía de estilo - Uso de las etiquetas - La otra guía de estilo .... |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Usar TServerSocket y TClientSocket para enviar "streams" más o menos "grandes" | dec | Internet | 9 | 04-08-2015 16:11:50 |
Como resuelvo este error "Temporary table resource limit" | fredy_boots | Conexión con bases de datos | 3 | 29-10-2014 12:53:01 |
Error al compilar: "Unknown table type" | DSK25 | C++ Builder | 0 | 27-06-2012 20:10:39 |
Necesito llamar a métodos de clases "hija" desde su clase "padre" | Flecha | OOP | 17 | 20-04-2007 00:03:53 |
error "table is read only" | Supermagayin | Conexión con bases de datos | 6 | 10-04-2005 22:39:17 |
|