Herramienta del Administrador de ODBC muestra tanto el DSN de usuario de 64 bits y 32 bits en una versión de 64 bits de Windows

Seleccione idioma Seleccione idioma
Id. de artículo: 942976 - Ver los productos a los que se aplica este artículo
Expandir todo | Contraer todo

En esta página

Síntomas

Una versión de 64 bits del sistema operativo Microsoft Windows incluye las siguientes versiones de la herramienta Administrador de origen de datos de conectividad abierta de bases de datos (ODBC) de Microsoft (Odbcad32.exe):
  • La versión de 32 bits del archivo Odbcad32.exe se encuentra en la carpeta %systemdrive%\Windows\SysWoW64.
  • La versión de 64 bits del archivo Odbcad32.exe se encuentra en la carpeta %systemdrive%\Windows\System32.
El archivo Odbcad32.exe muestra los siguientes tipos de nombres de origen de datos (DSN):
  • DSN del sistema
  • DSN de usuario

Síntoma 1

Muestra la versión de 32 bits de la herramienta Administrador de ODBC DSN de sistema de 32 bits, usuario DSN de 32 bits y 64 bits de usuario DSN. Muestra la versión de 64 bits de la herramienta Administrador de ODBC DSN de sistema de 64 bits, usuario DSN de 32 bits y 64 bits de usuario DSN.

Síntoma 2

La función SQLDataSources devuelve todas las versiones de los DSN de usuario independientemente de la arquitectura de la aplicación. La función SQLDataSources que se llama en una aplicación de 32 bits devuelve sólo los DSN de sistema para los controladores de 32 bits, pero devuelve los DSN de usuario para los controladores de 32 bits y 64 bits. De forma similar, la función SQLDataSources que se llama en una aplicación de 64 bits devuelve sólo los DSN de sistema para los controladores de 64 bits, pero devuelve los DSN de usuario para los controladores de 32 bits y 64 bits. Por lo tanto, si la aplicación realiza una conexión utilizando un DSN que se devuelve desde la función SQLDataSources de usuario, puede aparecer el siguiente mensaje de error:
No se encontró el nombre de origen de datos y no se especificó ningún controlador predeterminado
Por ejemplo, considere el siguiente escenario. Crear un DSN de usuario para el controlador de 32 bits "Microsoft Access Driver (*.mdb)". Este controlador no tiene una versión de 64 bits correspondiente. La función SQLDataSources que se llama en una aplicación de 64 bits devuelve este DSN de usuario de 32 bits. Sin embargo, si realiza una conexión a través de este DSN de usuario de 32 bits, recibirá el mensaje de error que se menciona anteriormente en esta sección.

Causa

Los DSN de usuario se almacenan en la subclave del registro siguiente:
HKEY_CURRENT_USER\Software\ODBC\ODBC.INI
Redirección del registro no está habilitada para esta subclave del registro. Por lo tanto, los DSN de usuario son visibles en las versiones de 32 bits y 64 bits de la herramienta Administrador de ODBC.

Solución

Para mantener la compatibilidad con versiones anteriores, ninguna solución para este problema está disponible actualmente.

Solución

Para evitar este problema, utilice la versión apropiada de la herramienta Administrador de ODBC. Si genera y, a continuación, ejecutar una aplicación como una aplicación de 32 bits en un sistema operativo de 64 bits, debe crear el origen de datos ODBC mediante el uso de la herramienta Administrador de ODBC en % windir%\SysWOW64\odbcad32.exe. Para indicar el tipo de DSN, puede agregar "_64" y "_32" para el DSN de usuario de 32 bits para el DSN de usuario de 64 bits.

Más información

La herramienta Administrador de ODBC de 64 bits puede invocarse desde Panel de Control para administrar los DSN de usuario y el DSN de sistema que son utilizados por los procesos de 64 bits. En un sistema operativo de 64 bits, se utiliza la herramienta Administrador de ODBC de 32 bits para Windows en Windows 64 (WOW64) procesos. La herramienta Administrador de ODBC de 32 bits desde la carpeta SysWoW64 debe invocar directamente. Puede utilizar la herramienta Administrador de ODBC de 32 bits para administrar los DSN de usuario y los DSN del sistema que utilizan los procesos WOW64.

Los DSN del sistema se almacenan en la subclave del registro siguiente:
HKEY_LOCAL_MACHINE\Software\ODBC\ODBC.INI
Redirección del registro está habilitada para esta subclave del registro. Por lo tanto, se separan los DSN de sistema para los controladores de 32 bits y controladores de 64 bits. La herramienta Administrador de ODBC de 64 bits no muestra los DSN que se crean mediante la herramienta Administrador de ODBC de 32 bits del sistema. De igual forma, la herramienta Administrador de ODBC de 32 bits no muestra los DSN que se crean mediante la herramienta Administrador de ODBC de 64 bits del sistema. Además, la herramienta Administrador de ODBC de 64 bits no muestra los DSN que utilizan controladores de 32 bits del sistema. De igual forma, la herramienta Administrador de ODBC de 32 bits no muestra los DSN que utilizan controladores de 64 bits del sistema.

Los DSN de usuario se almacenan en la subclave del registro siguiente:
HKEY_CURRENT_USER\Software\ODBC\ODBC.INI
Redirección del registro no está habilitada para esta subclave del registro. Por lo tanto, ambas herramientas Administrador de ODBC muestran todos los DSN de usuario.

Para obtener más información acerca de la redirección del registro, visite el siguiente sitio Web de Microsoft Developer Network (MSDN):
http://msdn2.Microsoft.com/en-us/library/aa384232.aspx

Propiedades

Id. de artículo: 942976 - Última revisión: lunes, 3 de marzo de 2014 - Versión: 4.0
La información de este artículo se refiere a:
  • Microsoft Open Database Connectivity 4.21
Palabras clave: 
kbexpertiseadvanced kbtshoot kbprb kbmt KB942976 KbMtes
Traducción automática
IMPORTANTE: Este artículo ha sido traducido por un software de traducción automática de Microsoft (http://support.microsoft.com/gp/mtdetails) en lugar de un traductor humano. Microsoft le ofrece artículos traducidos por un traductor humano y artículos traducidos automáticamente para que tenga acceso en su propio idioma a todos los artículos de nuestra base de conocimientos (Knowledge Base). Sin embargo, los artículos traducidos automáticamente pueden contener errores en el vocabulario, la sintaxis o la gramática, como los que un extranjero podría cometer al hablar el idioma. Microsoft no se hace responsable de cualquier imprecisión, error o daño ocasionado por una mala traducción del contenido o como consecuencia de su utilización por nuestros clientes. Microsoft suele actualizar el software de traducción frecuentemente.
Haga clic aquí para ver el artículo original (en inglés): 942976

Enviar comentarios

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com