Mi programa no puede ver una base de datos local en la computadora de un cliente. El programa y la base de datos tienen permisos completos de lectura y escritura, y el programa es un programa de formularios de Windows. ¿Qué puedo mirar para diagnosticar o solucionar este problema?

Problemas comunes con datos locales

Problema


  1. Cada vez que pruebo mi aplicación y modifico los datos, mis cambios desaparecen la próxima vez que ejecuto mi aplicación.
  2. Aparece un mensaje que dice que el archivo de datos está bloqueado.
  3. Se deniega el acceso cuando más de un usuario intenta acceder a la misma base de datos al mismo tiempo.

Explicación


  1. El valor de la propiedad Copiar al directorio de salida es Copiar si es más reciente o Copiar siempre. La base de datos en su carpeta de salida (la base de datos que se modifica cuando prueba su aplicación) se sobrescribe cada vez que crea su proyecto. Para obtener más información, consulte Cómo: administrar archivos de datos locales en su proyecto.
  2. Acceso (archivos .mdb): verifique que el archivo no esté abierto en otro programa, como Access.
    SQL Server Express (archivos .mdf): SQL Express bloquea el archivo de datos si intenta copiarlo, moverlo o cambiarle el nombre fuera del IDE de Visual Studio.
  3. Visual Studio aprovecha las instancias de usuario , que es una característica de SQL Server Express que crea una instancia separada de SQL Server para cada usuario. Después de que un usuario accede al archivo, los usuarios posteriores no pueden conectarse. Este problema puede ocurrir si, por ejemplo, intenta ejecutar una aplicación web en el Servidor de desarrollo de sitio oficial de Microsoft ASP.NET y los Servicios de información de Internet (IIS) al mismo tiempo, porque IIS generalmente se ejecuta con una cuenta diferente.

Fuente: Resumen de datos locales

Otro enlace que puede ayudar: ¿No puedo obtener acceso a mi base de datos creada a través de Visual Studio?

Solución oscura Resulta que se instaló una versión de Microsoft de 32 bits en un sistema de 64 bits que era incompatible con mi programa y el kit de herramientas de acceso que estaba instalando. La versión de 64 bits de las herramientas no quería instalarse y las herramientas de 32 bits instaladas, pero no funcionaban en un sistema de 64 bits.
Después de buscar un poco en Google, lo resolví compilándolo con un preajuste x86 en lugar de “cualquier computadora”. ¡Lucro!