Cómo configurar orígenes de datos ODBC durante la distribución de aplicaciones

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

En esta página

Resumen

En este artículo se describe los cuatro métodos siguientes para configurar un ODBC origen de datos en un equipo:
  • Configuración de ODBC
  • RegisterDatabase
  • API DE ODBC
  • Archivos de copia de INI ciegos

Más información

Archivos necesarios

Los siguientes archivos deben distribuirse con la aplicación si utiliza ODBC. Cuando utilice al Asistente para instalación para crear discos de distribución, asegúrese de que se incluyen los archivos necesarios en la lista de archivos. Todos los archivos listados debe instalarse en el directorio \WINDOWS\SYSTEM.

Archivos opcionales (SQL Server u Oracle) se indican con un asterisco (*).
File                  Description
----------------------------------------------------------------------
ODBC.DLL              The ODBC Driver Manager. This DLL is called by the
                      Microsoft Jet database engine when performing ODBC
                      operations. The Driver Manager handles loading the
                      correct ODBC driver and dispatching ODBC function
                      calls to the driver.

ODBCINST.DLL          The ODBC Driver Installation library. This DLL
                      contains Driver installation specific functions.
                      The ODBC Administrator (ODBCADM.EXE) calls functions
                      exported from this DLL when installing ODBC
                      drivers. You may also call functions in this DLL
                      to automate driver installation.

ODBCADM.EXE           The ODBC Administrator program. This program
                      allows a user to install ODBC drivers and
                      set up or modify Data Sources.

ODBCINST.HLP          The ODBC Administrator help file.

COMMDLG.DLL           The Common Dialog DLL. This DLL is used by the
                      ODBC Administrator program.

CTL3D.DLL             The 3D Control DLL. This DLL is used by the ODBC
                      Administrator program. If you are using ODBC.DLL
                      version 1.05 or greater, you need to distribute
                      CTL3DV2.DLL.

PDSODBC.DLL           Crystal Reports Physical Server DLL for ODBC. This
                      DLL is required only if your application uses Crystal
                      Reports to access an ODBC data source.

<driver>.DLL          The ODBC driver(s) that the application will use
                      to connect to specific Data Sources.

                      SQL Server:  SQLSRVR.DLL*
                      Oracle 6:    SQORA.DLL*

<netlib>.DLL          The network library file(s). This file is used
                      to access the Data Source when using a specific
                      network protocol.

                      Named Pipes: DBNMP3.DLL*
                      TCP/IP (Sybase SQL Server): WDBNOVTC.DLL*
                      IPX/SPX (Sybase SQL Server): WDBNOVSP.DLL*
                      SQL*Net Interface: ORA6WIN.DLL*

INSTCAT.SQL*          SQL Server Catalog Stored Procedures script.

DRVSSRVR.HLP*         SQL Server ODBC Driver help file.

ORASETUP.DLL*         Oracle ODBC Driver setup functions.

DRVORACL.HLP*         Oracle ODBC Driver help file.

ORACLE.TXT*           Oracle ODBC Setup "read me" file.

ODBC.INI              Initialization file containing information
                      about specific Data Sources. The DSN parameter
                      in the Connect property of the data control or
                      the OpenDatabase statement corresponds to an
                      entry in the ODBC.INI. This file must also be
                      created or modified on the client computer.

ODBCINST.INI          The Initialization file that contains
                      information about installed ODBC drivers. The
                      RegisterDatabase statement and ODBC Administrator
                      use the information contained in this file to
                      set up Data Sources. Entries in ODBCINST.INI
                      are created either by running an ODBC driver
                      setup or through the ODBC API. This file must
                      also be either created or modified on the client
                      computer.

Cuatro métodos a la información de DSN obtener en ODBC.INI y ODBCINST.INI

El.Los archivos INI almacenan información acerca de los controladores ODBC y los datos de ODBC Fuentes. Por tanto, son variable--un usuario puede tenerlos ya instalado en el directorio \WINDOWS. Si un programador tuviera que oculto copiar ODBC.INI y ODBCINST.INI en el equipo del usuario, los nuevos archivos pueden sobrescribir los orígenes de datos existentes.

A continuación se muestran cuatro métodos que puede utilizar para obtener información de DSN en el usuario ODBC.INI y ODBCINST.Archivos INI.

Configuración de ODBC

Para instalar a un controlador ODBC y establecer un origen de datos ODBC, el objeto Visual Documentación de ayuda en línea básica recomienda que copie todo el contenido del directorio \VB\ODBC en un disco de distribución adicionales.

Como desarrollador, puede especificar que se inserte el disco y el programa de instalación.EXE se ejecuta desde un disco. Además, puede pedir al usuario que inserte el Disquete ODBC y, a continuación, utilice el comando de Shell de Visual Basic para desembolsar en el programa de instalación.EXE.

El Asistente para instalación copia y modifica SETUP1.MAK en SETUP1A.MAK durante la proceso de creación de discos de distribución. Crea SETUP1A.MAK en SETUP1.EXE, lo comprime y lo copia en los discos de distribución. Cuando PROGRAMA DE INSTALACIÓN.EXE se ejecuta en los discos de distribución, los archivos en el programa de instalación.LST se copian en el equipo de destino. SETUP1.EX_ es, a continuación, sin comprimir y ejecutado para empezar a copiar archivos desde los discos en el destino equipo.

Es posible modificar, a continuación, SETUP1A.MAK, reconstruir SETUP1.EXE, comprimir, y copiar en los discos de distribución. Para asegurarse de que el archivo comprimido cabrá en el primer disco de distribución, debe rellenar el proyecto con código antes de ejecutar primero el Asistente para instalación. A continuación, puede cambiar el en los comentarios de código y agregue el nuevo código para pedir el disco de instalación de ODBC. La tamaño del archivo EXE resultante, a continuación, sigue cabrá en el primer disco de distribución disco.

Modificar SETUP1.FRM en el directorio \VB\SETUPKIT\SETUP1 para agregar la necesaria código para rellenar el archivo ejecutable. Este archivo se copia en SETUP1A.MAK durante la Ejecución del Asistente de instalación.

Nota: soporte técnico de Microsoft Technical no admite la modificación de la Proceso de instalación o cualquiera de los archivos de instalación. Se proporciona soporte para el programa de instalación Asistente y los archivos crea sólo una base de "tal cual".

Éstos son los pasos a seguir:

  1. Inicio de Visual Basic y en el menú archivo, elija Abrir proyecto. Abrir SETUP1.MAK en el directorio \VB\SETUPKIT\SETUP.
  2. Seleccione SETUP1.FRM desde la ventana de proyecto. Presione F7 para ver el código.
  3. Al final de la Form_Load procedimiento agregue el código siguiente en el ExitSub: la etiqueta parte, después de RestoreProgMan y antes de la instrucción End:
          Dim tmpK As String
          Dim tmpS As String
          Dim I As Long
          tmpK = "dummy"
          For I = 1 To 1000
             tmpS = Mid$(tmpK, 1, 2)
             tmpS = Mid$(tmpK, 1, 2)
             tmpS = Mid$(tmpK, 1, 2)
             tmpS = Mid$(tmpK, 1, 2)
             tmpS = Mid$(tmpK, 1, 2)
             tmpS = Mid$(tmpK, 1, 2)
             tmpS = Mid$(tmpK, 1, 2)
             tmpS = Mid$(tmpK, 1, 2)
             tmpS = Mid$(tmpK, 1, 2)
             tmpS = Mid$(tmpK, 1, 2)
             tmpS = Mid$(tmpK, 1, 2)
             tmpS = Mid$(tmpK, 1, 2)
             tmpS = Mid$(tmpK, 1, 2)
             tmpS = Mid$(tmpK, 1, 2)
             tmpS = Mid$(tmpK, 1, 2)
             tmpS = Mid$(tmpK, 1, 2)
             tmpS = Mid$(tmpK, 1, 2)
             tmpS = Mid$(tmpK, 1, 2)
             tmpS = Mid$(tmpK, 1, 2)
             tmpS = Mid$(tmpK, 1, 2)
          Next I
  4. Guarde el proyecto (ALT, F, V).
  5. Ejecutar al Asistente para instalación y crear los discos de distribución.
Una vez que se han creado los discos, necesita volver a Visual Básica, edición de SETUP1A.MAK y agregue el código apropiado para solicitar la Configuración de ODBC y el disco de instalación. Siga estos pasos:

  1. Inicio de Visual Basic.
  2. Abra la SETUP1A.Proyecto MAK en \VB\SETUPKIT\SETUP1 (ALT, F, O).
  3. Elija SETUP1A.FRM y presione F7 para ver el código.
  4. En el procedimiento Form_Load, coloque el apóstrofo delante de cada línea el código ficticio que previamente se insertó como un marcador de posición:
          'Dim tmpK As String
          'Dim tmpS As String
          'Dim I As Long
          'tmpK = "dummy"
          'For I = 1 To 1000
          '   tmpS = Mid$(tmpK, 1, 2)
          '   tmpS = Mid$(tmpK, 1, 2)
          '   tmpS = Mid$(tmpK, 1, 2)
          '   tmpS = Mid$(tmpK, 1, 2)
          '   tmpS = Mid$(tmpK, 1, 2)
          '   tmpS = Mid$(tmpK, 1, 2)
          '   tmpS = Mid$(tmpK, 1, 2)
          '   tmpS = Mid$(tmpK, 1, 2)
          '   tmpS = Mid$(tmpK, 1, 2)
          '   tmpS = Mid$(tmpK, 1, 2)
          '   tmpS = Mid$(tmpK, 1, 2)
          '   tmpS = Mid$(tmpK, 1, 2)
          '   tmpS = Mid$(tmpK, 1, 2)
          '   tmpS = Mid$(tmpK, 1, 2)
          '   tmpS = Mid$(tmpK, 1, 2)
          '   tmpS = Mid$(tmpK, 1, 2)
          '   tmpS = Mid$(tmpK, 1, 2)
          '   tmpS = Mid$(tmpK, 1, 2)
          '   tmpS = Mid$(tmpK, 1, 2)
          '   tmpS = Mid$(tmpK, 1, 2)
          'Next I
  5. Agregue el código siguiente en el procedimiento Form_Load inmediatamente siguiendo el código comentado:
          x% = MsgBox("Do you want to install the ODBC Drivers?", 36,
             App.title)
          If x% = 6 Then
             If Not PromptForNextDisk(2, SourcePath$ + "ODBCADM.EX_") Then
                GoTo ErrorSetup
             End If
             x% = Shell(SourcePath$ &amp; "setup.exe")
          End If
  6. Cambie el número de disco a 1 mayor que el número total de discos de distribución creados. El número de disco es el primer parámetro el procedimiento PromptForNextDisk. En este ejemplo, el siguiente disco a Preguntar si es 2.
  7. Guardar la SETUP1A.MAK del proyecto y crear el archivo ejecutable como SETUP1.EXE en el directorio \VB\SETUPKIT\SETUP1 (ALT, F, K).
  8. Desembolsar en un símbolo de MS-DOS y cambie el directorio a \VB\SETUPKIT\SETUP1. Ejecute lo siguiente en el símbolo del sistema:
    \VB\SETUPKIT\KITFILES\COMPRESS - r SETUP1.EXE
  9. Coloque el primer disco de distribución en la unidad correspondiente y copiar SETUP1.EX_ en el disco:
    copiar SETUP1.EX_ A:\SETUP1.EX_
Ahora, cuando se ejecutan los discos de distribución, el paso final será pedir para el disco de instalación y configuración de ODBC. PROGRAMA DE INSTALACIÓN.EXE se ejecutará desde Este disco y el usuario, a continuación, pueden instalar el controlador ODBC apropiado y crear el origen de datos es necesario. Debe incluir instrucciones detalladas al respecto proceso.

Para obtener más información acerca de cómo modificar SETUP1.EXE, consulte el capítulo 25, "Distribución de la aplicación" en el programador de Microsoft Visual Basic Guía.

RegisterDatabase

Visual Basic proporciona la instrucción RegisterDatabase para ayudar en la instalación Orígenes de datos ODBC, no los controladores. La instrucción RegisterDatabase, supone que ODBCINST.INI y ODBCINST.DLL ya existe en el equipo. Es decir, el controladores deben instalarse antes de ejecutar RegisterDatabase. Si es así, el desarrollador puede utilizar RegisterDatabase para agregar o actualizar una entrada en el ODBC.INI.

El problema con este método es que si el equipo cliente no tiene ODBC instalado en el equipo, el ODBCINST.INI y el archivo DLL no existe. Además, si el controlador ODBC es nuevo en el equipo, no habrá una entrada Para ello en ODBCINST.INI, RegisterDatabase es así, a continuación, también fallará.

La siguiente descripción, sintaxis, comentarios y ejemplo acerca de la Instrucción RegisterDatabase proviene de la Ayuda en pantalla de Visual Basic:

Descripción:
Permite conecta la información para un nombre de origen de datos ODBC disponible para Utilice la función OpenDatabase.
Sintaxis:
RegisterDatabase dsn, atributos de silencio, controlador,
Observaciones: La instrucción RegisterDatabase consta de las siguientes partes:

  • DSN: una expresión de cadena que es un nombre utilizado en el OpenDatabase función y hace referencia a un bloque de información descriptiva acerca de la origen de datos. Por ejemplo, si el origen de datos es un ODBC remota base de datos, es el nombre del servidor.
  • Controlador: una expresión de cadena que es el nombre del controlador ODBC. No es el nombre del archivo DLL del controlador ODBC. Por ejemplo, "SQL Server" o "Oracle" son el nombre del controlador pero "SQLSRVR."DLL" es el nombre de un archivo DLL. Debe disponer de ODBC y el controlador apropiado ya está instalado.
  • Silencio: una expresión numérica que es True si no desea mostrar los cuadros de diálogo del controlador ODBC que solicitan específicos del controlador información, o False si desea que aparezca el controlador ODBC cuadros de diálogo. Si silent es True, attributes debe contener todos los se mostrará la información necesaria específica del controlador o el cuadro de diálogo de todos modos.
  • Atributos: expresión de cadena que es una lista de palabras clave que se va a agregar en el archivo ODBC.Archivo INI. Las palabras clave están en un retorno de carro cadena delimitada.
Ejemplo:
      Sub Command1_Click ()
         Dim att As String
         Dim mydb As Database

         att = "Description = SQL Server on server Texas" & Chr$(13)
         att = att & "OemToAnsi=No" & Chr$(13)   ' Build keywords string.
         att = att & "Server=TEXAS" & Chr$(13)
         att = att & "Network=DBNMP3" & Chr$(13)
         att = att & "Address=\\TEXAS\PIPE\SQL\QUERY" & Chr$(13)
         att = att & "Database=Pubs" & Chr$(13)
         att = att & "LastUser=Stimpy"

         ' Update ODBC.INI.
         RegisterDatabase "Texas", "SQL Server", True, att

         Set mydb = OpenDatabase("Texas", False, False, "ODBC;")
         mydb.Close

      End Sub
Si la base de datos ya está registrado en el archivo ODBC.INI, la entrada es actualizado. Si se produce un error en RegisterDatabase por cualquier motivo, no se realizan cambios a el SDK de ODBC.Se produce un error y archivo INI.

API DE ODBC

Esto es probablemente la más flexible y eficaz método, pero la mayor parte los desarrolladores no está familiarizados con él y no tiene el SDK de ODBC que la API de los documentos. Los desarrolladores deben obtener el desarrollo de Software de Microsoft Kit (SDK) y obtener la "ODBC de Microsoft 2.0 referencia del programador y SDK Guía"de Microsoft Press.

INI de copia

Si el desarrollador está seguro de que un ODBC.INI y ODBCINST.INI no existen. en el equipo, simplemente puede copiar los archivos. Sin embargo, el desarrollador debe garantizar que las rutas de acceso a los controladores son correctas; rutas de acceso son completo dentro de la.Archivos INI. Por ejemplo, el SDK de ODBC.Será el archivo INI especificar C:\WINDOWS\SYSTEM\SQLSRVR.DLL como el controlador de SQL Server, por tanto, si instalación de Windows del usuario se encuentra en \WIN31, la ruta de acceso no funcionará.

Propiedades

Id. de artículo: 123008 - Última revisión: domingo, 23 de junio de 2013 - Versión: 2.0
La información de este artículo se refiere a:
  • Microsoft Visual Basic 4.0 Professional Edition
Palabras clave: 
kbdatabase kbhowto kbmt KB123008 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): 123008
Renuncia a responsabilidad de los contenidos de la KB sobre productos a los que ya no se ofrece asistencia alguna
El presente artículo se escribió para productos para los que Microsoft ya no ofrece soporte técnico. Por tanto, el presente artículo se ofrece "tal cual" y no será actualizado.

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