es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Migrando un antiguo programa VB + MSAccess a una computadora diferente.

Tengo un programa antiguo que nos hicieron hace mucho tiempo. Consiste en un gran archivo MDB (Access) con todos los datos (sin cifrar, puedo abrir el archivo manualmente y navegar por todos los datos) y un archivo EXE (¿probablemente VB?) que fue hecho a medida para gestionar fácilmente los datos del archivo.

Estoy tratando de trasladar este programa para otro usuario, para que se ejecute en su propio portátil.

Primero intenté copiar todos los archivos, pero tuve errores de archivo faltante MSCOM, GRD, LST y ocx. Los rastreé y los registré con regsvr32, y el programa pareció avanzar un poco.

Luego tuve un error de conector ODBC. Jugando con el administrador de origen de datos ODBC, agregué una entrada con el nombre del programa que apunta al archivo MBD específico. Esto también ayudó.

Ahora el programa se inicia y muestra todos los menús, botones y todo. Sin embargo, el registro predeterminado que debería estar en pantalla está vacío y tan pronto como presiono cualquier control (siguiente registro, lista, etc.) se bloquea con un error VB 91:

“Run-time Error ’91’: Object variable or With block variable not set”

Así que parece que el programa puede abrir el archivo de base de datos en sí mismo, pero no puede acceder realmente a los datos dentro.

¿Qué más puedo intentar para ver qué necesito configurar correctamente? ¿Hay algo que “espíe” dentro de un programa VB para ver cómo está tratando de acceder al archivo MDB?

¡Cualquier ayuda sería apreciada!

Tags:  , ,

Answer

  1. Avatar for davy.ai

    Parece que el programa está teniendo problemas para acceder a los datos dentro del archivo de Access. Aquí hay algunas cosas que puedes intentar:

    1. Verifica la cadena de conexión: La cadena de conexión es lo que le dice al programa cómo conectarse al archivo de Access. Es posible que la cadena de conexión sea incorrecta o que falten algunos detalles importantes. Puedes intentar buscar en el código la cadena de conexión o buscar en cualquier archivo de configuración que pueda contenerla.

    2. Verifica los permisos: Asegúrate de que la cuenta de usuario que está ejecutando el programa tenga los permisos apropiados para acceder al archivo de Access. Puedes intentar ejecutar el programa como administrador o otorgar a la cuenta de usuario control total sobre el archivo.

    3. Usa una herramienta para depurar el programa: Hay varias herramientas disponibles que pueden ayudarte a depurar un programa VB6, como VB Watch, MZ-Tools o CodeSMART. Estas herramientas pueden darte información sobre cómo el programa está intentando acceder al archivo MDB y ayudarte a identificar cualquier error.

    4. Considera migrar a una plataforma más nueva: VB6 es una tecnología obsoleta que ya no es compatible con Microsoft. Podrías considerar migrar el programa a una plataforma más nueva, como VB.NET o C#. Esto te daría acceso a herramientas y tecnologías de desarrollo modernas, así como un mejor soporte y seguridad. Además, las plataformas modernas son más compatibles con las nuevas versiones de Windows y Office, lo que podría ayudar a evitar problemas como archivos faltantes o errores de compatibilidad.

Comments are closed.