Condividi tramite


Funzione SQLReadFileDSN

Conformità
Versione introdotta: ODBC 3.0

Riepilogo
SQLReadFileDSN legge le informazioni da un DSN file.

Sintassi

  
BOOL SQLReadFileDSN(  
     LPCSTR   lpszFileName,  
     LPCSTR   lpszAppName,  
     LPCSTR   lpszKeyName,  
     LPSTR    lpszString,  
     WORD     cbString,  
     WORD *   pcbString);  

Argomenti

lpszFileName
[Input] Puntatore al buffer di dati contenente il nome del file con estensione dsn. Un'estensione dsn viene aggiunta a tutti i nomi di file che non hanno già un'estensione dsn. Il valore in *lpszFileName deve essere una stringa con terminazione Null.

lpszAppName
[Input] Puntatore al buffer di dati contenente il nome dell'applicazione. Si tratta di "ODBC" per la sezione ODBC. Il valore in *lpszAppName deve essere una stringa con terminazione Null.

lpszKeyName
[Input] Puntatore al buffer di dati contenente il nome della chiave da leggere. Vedere "Commenti" per le parole chiave riservate. Il valore in *lpszAppName deve essere una stringa con terminazione Null.

lpszString
[Output] Puntatore al buffer di dati contenente la stringa associata alla chiave da leggere.

Se *lpszFileName è un nome di file con estensione dsn valido, ma l'argomento lpszAppName è un puntatore Null e lpszKeyNameè un puntatore Null, *lpszString contiene un elenco di applicazioni valide. Se *lpszFileName è un nome file dsn valido e *lpszAppName è un nome di applicazione valido, ma l'argomento lpszKeyName è un puntatore Null, * lpszString contiene un elenco di parole chiave riservate valide nella sezione appropriata del file DSN, delimitato da punto e virgola. Se *lpszFileName è un nome file dsn valido, ma *lpszAppName è un puntatore Null e lpszKeyName argomento è un puntatore Null, *lpszString contiene un elenco delle sezioni nel file DSN, delimitato da punto e virgola.

cbString
[Input] Lunghezza del buffer *lpszString .

pcbString
[Output] Numero totale di byte disponibili per la restituzione in *lpszString. Se il numero di byte disponibili per la restituzione è maggiore o uguale a cbString, la stringa di output in *lpszString viene troncata a cbString meno il carattere di terminazione Null. L'argomento pcbString può essere un puntatore Null.

Resi

Se ha esito positivo, la funzione restituisce TRUE se ha esito negativo.

Diagnostica

Quando SQLReadFileDSN restituisce FALSE, è possibile ottenere un valore *pfErrorCode associato chiamando SQLInstallerError. Nella tabella seguente sono elencati i valori *pfErrorCode che possono essere restituiti da SQLInstallerError e spiega ognuno nel contesto di questa funzione.

*pfErrorCode Errore Descrizione
ODBC_ERROR_GENERAL_ERR Errore generale del programma di installazione Si è verificato un errore per il quale non si è verificato un errore specifico del programma di installazione.
ODBC_ERROR_INVALID_BUFF_LEN Lunghezza del buffer non valida L'argomento lpszString è NULL.

L'argomento cbString è minore o uguale a 0.
ODBC_ERROR_INVALID_PATH Percorso di installazione non valido Il percorso del nome file specificato nell'argomento lpszFileName non è valido.
ODBC_ERROR_INVALID_REQUEST_TYPE Tipo di richiesta non valido L'argomento lpszAppName era NULL, mentre l'argomento lpszKeyName era valido.
ODBC_ERROR_OUT_OF_MEM Memoria insufficiente Il programma di installazione non è riuscito a eseguire la funzione a causa di una mancanza di memoria.
ODBC_ERROR_OUTPUT_STRING_TRUNCATED Stringa di output troncata La stringa restituita in *lpszString è stata troncata perché il valore in cbString era minore o uguale al valore in *pcbString.
ODBC_ERROR_REQUEST_FAILED Richiesta non riuscita La parola chiave non esisteva nel DSN del file.

Commenti

ODBC riserva il nome della sezione [ODBC] in cui archiviare le informazioni di connessione. Le parole chiave riservate per questa sezione sono identiche a quelle riservate per una stringa di connessione in SQLDriverConnect. Per altre informazioni, vedere Descrizione della funzione SQLDriverConnect .

Le applicazioni possono usare queste parole chiave riservate per leggere le informazioni in un DSN file. Se un'applicazione vuole individuare la stringa di connessione senza DSN associata a un DSN file, può chiamare SQLReadFileDSN per una delle parole chiave della stringa di connessione riservata nella sezione [ODBC]. La stringa di connessione completa passata in una connessione senza DSN è una combinazione di tutte le parole chiave (riservate e specifiche del driver) nella sezione [ODBC].

Per informazioni su Vedere
Scrittura di informazioni in un DSN file SQLWriteFileDSN