Hay una forma, que ya ha sido utilizada por muchos y me extraña que nadie te la haya dicho aún. Consiste en lo siguiente:
- Como seguramente sabrás, las tablas .DBF están compuestas por una cabecera donde se encuentran ciertos datos, como la estructura de la tabla, la cantidad de registros que contiene, etc. y por un detalle, donde se encuentran los datos ingresados por los usuarios
- El truco consiste en cambiar algunos bytes de la cabecera de tal manera que sea imposible abrir la tabla con un simple USE
- Tu aplicación restaura los bytes correctos en la cabecera y de esa manera se puede utilizar esa tabla sin problema mientras dicha aplicación esté corriendo
- Al salir de la aplicación se vuelven a poner en la cabecera datos incorrectos, para que sea inaccesible desde afuera de ella
Si deseas evitar que mientras tu aplicación esté corriendo se pueda utilizar dicha tabla, entonces lo que puedes hacer es lo siguiente:
- Copias el archivo original .DBF (el cual se encuentra protegido), a otra carpeta, con otro nombre y otra extensión
- Al archivo copiado le restauras la cabecera correcta
- Utilizas el archivo copiado
- Al finalizar tu aplicación, cambias los bytes de su cabecera para que sea inaccesible y lo copias a la misma carpeta donde se encuentran los .DBF
De esta manera, nadie podrá abrir los .DBF, solamente tu aplicación podrá hacerlo.
Saludos.
Walter.