Configurazione di origini dati ODBC durante la distribuzione di applicazioni

Traduzione articoli Traduzione articoli
Identificativo articolo: 123008 - Visualizza i prodotti a cui si riferisce l?articolo.
Espandi tutto | Chiudi tutto

In questa pagina

Sommario

In questo articolo viene spiegato i quattro metodi seguenti per l'impostazione di un'origine di dati ODBC in un computer:
  • Installazione di ODBC
  • RegisterDatabase
  • API ODBC
  • File di copia dei file INI nascosta

Informazioni

File necessari

Se si utilizza ODBC, i seguenti file devono essere distribuiti con l'applicazione. Quando si utilizza l'installazione guidata per creare dischi di distribuzione, Ŕ necessario assicurarsi che i file necessari siano inclusi nell'elenco dei file. Tutti i file elencati deve essere installati nella directory \Windows\System.

I file facoltativi (SQL Server o Oracle) sono contrassegnati 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.

Quattro metodi per le informazioni DSN Get in ODBC.ini ODBCINST.INI

I file ini archiviare informazioni sui driver ODBC e le origini dati ODBC. Di conseguenza, sono variabile, un utente abbia giÓ li installato nella directory \Windows. Se uno sviluppatore ciecamente consente di copiare ODBC.ini e ODBCINST.INI nel computer dell'utente, i nuovi file potrebbero sovrascrivere origini dati esistenti.

Di seguito sono quattro metodi che Ŕ possibile utilizzare per ottenere informazioni DSN nel file ODBC.ini e ODBCINST.INI dell'utente.

Installazione di ODBC

Per installare un driver ODBC e stabilire un'origine dati ODBC, la Guida in linea di Visual Basic consiglia di copiare l'intero contenuto della directory \VB\ODBC su un disco aggiuntive di distribuzione.

QualitÓ di sviluppatore, Ŕ possibile specificare di inserire il disco e, esecuzione di Setup.exe dal disco floppy. Inoltre, Ŕ possibile richiedere l'inserire il disco floppy ODBC e quindi utilizzare il comando di shell di Visual Basic per shell a Setup.exe.

L'installazione guidata copia e modifica SETUP1.MAK in SETUP1A.MAK durante il processo di creazione di dischi originali. Integra SETUP1A.MAK nel SETUP1.EXE, comprime e viene copiato in dischi originali. Quando si esegue Setup.exe sui dischi di distribuzione, i file in Setup.lst vengono copiati nel computer di destinazione. SETUP1.EX_ quindi non compresso viene eseguito per iniziare la copia dei file dai dischi floppy al computer di destinazione.

╚ possibile quindi modificare SETUP1A.MAK, ricostruire SETUP1.EXE, comprimerlo e copiarlo dischi originali. Per garantire che le dimensioni di file compresso corrisponderanno sul primo disco di distribuzione, Ŕ necessario riquadro il progetto con codice prima di prima esecuzione dell'installazione guidata. ╚ possibile quindi modificare il codice in commenti e aggiungere di nuovo codice per richiedere il disco di installazione di ODBC. Le dimensioni EXE risultante corrisponderanno alla quindi comunque sul primo disco floppy di distribuzione.

Modificare SETUP1.FRM nella directory \VB\SETUPKIT\SETUP1 per aggiungere il codice necessario per il file eseguibile. Questo file viene copiato nel SETUP1A.MAK durante l'esecuzione dell'installazione guidata.

Nota : supporto tecnico Microsoft non supporta la modifica del processo di installazione o i file di programma di installazione. Supporto viene fornito per l'installazione guidata e i file che viene creato in "cosý com'Ŕ" base solo.

Di seguito sono i passaggi da seguire:

  1. Avviare Visual Basic e scegliere Apri progetto dal menu file. Aprire SETUP1.MAK nella directory \VB\SETUPKIT\SETUP.
  2. Selezionare SETUP1.FRM dalla finestra del progetto. Premere F7 per visualizzare il codice.
  3. Alla fine di Form_Load la routine aggiungere il codice riportato di seguito nel ExitSub: etichetta parte, dopo aver RestoreProgMan e prima dell'istruzione 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. Salvare il progetto (ALT, F, V).
  5. Eseguire l'installazione guidata e creare i dischi di distribuzione.
Una volta creati i dischi, Ŕ necessario accedere nuovamente in Visual Basic, modificare SETUP1A.MAK e aggiungere il codice appropriato per richiedere il disco di installazione e di installazione di ODBC. Attenersi alla seguente procedura:

  1. Avviare Visual Basic.
  2. Aprire il progetto SETUP1A.MAK in \VB\SETUPKIT\SETUP1 (ALT, F, O).
  3. Scegliere SETUP1A.FRM e premere F7 per visualizzare il codice.
  4. Nella routine Form_Load, aggiungere un apostrofo all'inizio di ogni riga del codice fittizio che in precedenza Ŕ stato inserito come un segnaposto:
          '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. Aggiungere il codice seguente all'interno della routine Form_Load immediatamente dopo il codice commentato:
          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. Modificare il numero del disco su 1 maggiore del numero totale dei dischi di distribuzione creata. Il numero di disco Ŕ il primo parametro alla routine PromptForNextDisk. In questo esempio, il disco successivo per richiedere Ŕ 2.
  7. Salvare il progetto SETUP1A.MAK e creare l'eseguibile come SETUP1.EXE nella directory \VB\SETUPKIT\SETUP1 (ALT, F, K).
  8. Shell all'esterno di un prompt dei comandi di MS-DOS e modificare la directory in finestra di \VB\SETUPKIT\SETUP1. Consente di eseguire quanto segue al prompt dei comandi:
    SETUP1.EXE \VB\SETUPKIT\KITFILES\COMPRESS - r
  9. Inserire il primo disco floppy distribuzione nell'unitÓ appropriata e copiare SETUP1.EX_ sul disco floppy:
    copiare SETUP1.EX_ A:\SETUP1.EX_
A questo punto, quando vengono eseguiti i dischi di distribuzione, il passaggio finale sarÓ per richiedere il disco di installazione e installazione ODBC. Setup.exe verrÓ eseguita da questo disco e l'utente pu˛ installare il driver ODBC appropriato e creare l'origine dati necessario. ╚ necessario includere le istruzioni per questo processo.

Per ulteriori informazioni sulla modifica SETUP1.EXE consultare il capitolo 25 "Distributing Your Application" nel manuale del programmatore di Microsoft Visual Basic.

RegisterDatabase

In Visual Basic l'istruzione RegisterDatabase consente l'installazione di origini dati ODBC, driver non Ŕ disponibile. L'istruzione di RegisterDatabase presuppone che ODBCINST.INI e ODBCINST.DLL esistano giÓ nel computer. ╚ necessario installare i driver prima di eseguire RegisterDatabase. In tal caso, Ŕ possibile che lo sviluppatore utilizzare RegisterDatabase per aggiungere o aggiornare una voce di ODBC.ini.

Il problema con questo metodo Ŕ che se il computer client non dispone di ODBC installata nel computer, l'ODBCINST.INI e la DLL non sarÓ disponibile. Inoltre, se il driver ODBC Ŕ di nuovo al computer, non verrÓ una voce per il ODBCINST.INI, in modo RegisterDatabase avrÓ esito negativo quindi nonchÚ.

La seguente descrizione, sintassi, note ed esempio sull'istruzione RegisterDatabase ricavati dalla Guida in linea di Visual Basic:

Descrizione :
Rende connettere informazioni per nome un'origine dati ODBC disponibile utilizzare la funzione OpenDatabase.
sintassi :
Dsn RegisterDatabase, driver, invisibile all'utente, attributi
note : RegisterDatabase l'istruzione Ŕ composta dalle seguenti parti:

  • DSN : un'espressione di stringa che rappresenta un nome utilizzato nel OpenDatabase funzione e fa riferimento un blocco di informazioni descrittive sull'origine dati. Ad esempio, se l'origine dati Ŕ un database remoto di ODBC, sarebbe il nome del server.
  • DRIVER : un espressione stringa che rappresenta il nome del driver ODBC. Questo non Ŕ il nome del file DLL del driver ODBC. Ad esempio, "SQL Server" o "Oracle" sono il nome del driver, ma "SQLSRVR.DLL" Ŕ il nome di un file DLL. ╚ necessario ODBC e il driver appropriato giÓ installato.
  • invisibile all'utente : un'espressione numerica che Ŕ true se non si desidera visualizzare il driver ODBC finestre di dialogo di richiesta di informazioni specifiche del driver o false se si desidera visualizzare le finestre di dialogo driver ODBC. Se Ŕ invisibile all'utente Ŕ true, gli attributi devono contengono tutte le informazioni di specifiche del driver necessarie o la finestra di dialogo verrÓ visualizzato comunque.
  • ATTRIBUTES : stringa di espressione che rappresenta un elenco di parole chiave da aggiungere il file ODBC.ini. Le parole chiave sono in una stringa delimitata di ritorno.
esempio :
      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
se il database Ŕ giÓ registrato nel file ODBC.ini, la voce viene aggiornata. Se RegisterDatabase non riesce per qualsiasi motivo, non vengono apportate modifiche al file ODBC.ini e viene generato un errore.

API ODBC

Si tratta probabilmente il metodo pi¨ flessibile ed efficiente, ma gli sviluppatori non si ha familiaritÓ con tale e non dispongono il SDK di ODBC che l'API di documenti. Gli sviluppatori devono ottenere il Software Development Kit (SDK) di Microsoft e ottenere il "del programmatore di Microsoft ODBC 2.0 riferimento e SDK Guide" Microsoft Press.

Copia dei file INI

Se lo sviluppatore Ŕ certi che un ODBC.ini e ODBCINST.INI non esistono nel computer di installazione, Ŕ possibile semplicemente copiare i file. Tuttavia, lo sviluppatore deve garantire che i percorsi per i driver siano corretti, i percorsi sono completi all'interno dei file ini. Ad esempio, il file ODBC.ini verrÓ specificare C:\WINDOWS\SYSTEM\SQLSRVR.DLL come il driver per SQL Server, in modo che se l'installazione di Windows dell'utente Ŕ in \WIN31, il percorso non funziona.

ProprietÓ

Identificativo articolo: 123008 - Ultima modifica: martedý 13 luglio 2004 - Revisione: 1.2
Le informazioni in questo articolo si applicano a:
  • Microsoft Visual Basic 4.0 Professional Edition
  • Microsoft Visual Basic 4.0 Professional Edition
  • Microsoft Visual Basic 4.0 a 16 bit Enterprise Edition
  • Microsoft Visual Basic 4.0 32-Bit Enterprise Edition
  • Microsoft Visual Basic 3.0 Professional Edition
Chiavi:á
kbmt kbdatabase kbhowto KB123008 KbMtit
Traduzione automatica articoli
Il presente articolo Ŕ stato tradotto tramite il software di traduzione automatica di Microsoft e non da una persona. Microsoft offre sia articoli tradotti da persone fisiche sia articoli tradotti automaticamente da un software, in modo da rendere disponibili tutti gli articoli presenti nella nostra Knowledge Base nella lingua madre dell?utente. Tuttavia, un articolo tradotto in modo automatico non Ŕ sempre perfetto. Potrebbe contenere errori di sintassi, di grammatica o di utilizzo dei vocaboli, pi¨ o meno allo stesso modo di come una persona straniera potrebbe commettere degli errori parlando una lingua che non Ŕ la sua. Microsoft non Ŕ responsabile di alcuna imprecisione, errore o danno cagionato da qualsiasi traduzione non corretta dei contenuti o dell?utilizzo degli stessi fatto dai propri clienti. Microsoft, inoltre, aggiorna frequentemente il software di traduzione automatica.
Clicca qui per visualizzare la versione originale in inglese dell?articolo: 123008
LE INFORMAZIONI CONTENUTE NELLA MICROSOFT KNOWLEDGE BASE SONO FORNITE SENZA GARANZIA DI ALCUN TIPO, IMPLICITA OD ESPLICITA, COMPRESA QUELLA RIGUARDO ALLA COMMERCIALIZZAZIONE E/O COMPATIBILITA' IN IMPIEGHI PARTICOLARI. L'UTENTE SI ASSUME L'INTERA RESPONSABILITA' PER L'UTILIZZO DI QUESTE INFORMAZIONI. IN NESSUN CASO MICROSOFT CORPORATION E I SUOI FORNITORI SI RENDONO RESPONSABILI PER DANNI DIRETTI, INDIRETTI O ACCIDENTALI CHE POSSANO PROVOCARE PERDITA DI DENARO O DI DATI, ANCHE SE MICROSOFT O I SUOI FORNITORI FOSSERO STATI AVVISATI. IL DOCUMENTO PUO' ESSERE COPIATO E DISTRIBUITO ALLE SEGUENTI CONDIZIONI: 1) IL TESTO DEVE ESSERE COPIATO INTEGRALMENTE E TUTTE LE PAGINE DEVONO ESSERE INCLUSE. 2) I PROGRAMMI SE PRESENTI, DEVONO ESSERE COPIATI SENZA MODIFICHE, 3) IL DOCUMENTO DEVE ESSERE DISTRIBUITO INTERAMENTE IN OGNI SUA PARTE. 4) IL DOCUMENTO NON PUO' ESSERE DISTRIBUITO A SCOPO DI LUCRO.
Dichiarazione di non responsabilitÓ per articoli della Microsoft Knowledge Base su prodotti non pi¨ supportati
Questo articolo Ŕ stato scritto sui prodotti per cui Microsoft non offre pi¨ supporto. L?articolo, quindi, viene offerto ?cosý come Ŕ? e non verrÓ pi¨ aggiornato.

Invia suggerimenti

 

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