Funzione SQLRemoveDriver
Conformità
Versione introdotta: ODBC 3.0
Riepilogo
SQLRemoveDriver modifica o rimuove informazioni sul driver dalla voce Odbcinst.ini nelle informazioni di sistema.
Sintassi
BOOL SQLRemoveDriver(
LPCSTR lpszDriver,
BOOL fRemoveDSN,
LPDWORD lpdwUsageCount);
Argomenti
lpszDriver
[Input] Nome del driver registrato nella chiave Odbcinst.ini delle informazioni di sistema.
fRemoveDSN
[Input] I valori validi sono:
TRUE: rimuovere I DSN associati al driver specificato in lpszDriver. FALSE: non rimuovere DSN associati al driver specificato in lpszDriver.
lpdwUsageCount
[Output] Numero di utilizzo del driver dopo la chiamata di questa funzione.
Resi
Se ha esito positivo, la funzione restituisce TRUE se ha esito negativo. Se non esiste alcuna voce nelle informazioni di sistema quando questa funzione viene chiamata, la funzione restituisce FALSE.
Diagnostica
Quando SQLRemoveDriver 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_COMPONENT_NOT_FOUND | Componente non trovato nel Registro di sistema | Il programma di installazione non è riuscito a rimuovere le informazioni sul driver perché non esiste nel Registro di sistema o non è stato trovato nel Registro di sistema. |
ODBC_ERROR_INVALID_NAME | Driver o nome traduttore non valido | L'argomento lpszDriver non è valido. |
ODBC_ERROR_USAGE_UPDATE_FAILED | Impossibile incrementare o decrementare il numero di utilizzo dei componenti | Il programma di installazione non è riuscito a decrementare il numero di utilizzo del driver. |
ODBC_ERROR_REQUEST_FAILED | Richiesta non riuscita | L'argomento fRemoveDSN era TRUE, ma non è stato possibile rimuovere uno o più DSN. Chiamata a SQLConfigDriver con la richiesta di ODBC_REMOVE_DRIVER non riuscita. |
ODBC_ERROR_OUT_OF_MEM | Memoria insufficiente | Il programma di installazione non è riuscito a eseguire la funzione a causa di una mancanza di memoria. |
Commenti
SQLRemoveDriver integra la funzione SQLInstallDriverEx e aggiorna il numero di utilizzo dei componenti nelle informazioni di sistema. Questa funzione deve essere chiamata solo da un'applicazione di installazione.
SQLRemoveDriver decrementerà il valore del numero di utilizzo del componente di 1. Se il numero di utilizzo dei componenti passa a 0, si verificherà quanto segue:
Verrà chiamata la funzione SQLConfigDriver con l'opzione ODBC_REMOVE_DRIVER. Se l'opzione fRemoveDSN è impostata su TRUE, la funzione ConfigDSN chiama SQLRemoveDSNFromIni per rimuovere tutte le origini dati associate al driver specificato in lpszDriver. Se l'opzione fRemoveDSN è impostata su FALSE, le origini dati non verranno eliminate.
La voce del driver nelle informazioni di sistema verrà rimossa. La voce del driver si trova nel percorso delle informazioni di sistema seguente, sotto il nome del driver:
HKEY_LOCAL_MACHINE
SOFTWARE
ODBC
Odbcinst.ini
SQLRemoveDriver non rimuove effettivamente alcun file. Il programma chiamante è responsabile dell'eliminazione dei file e della gestione del numero di utilizzo dei file. Solo dopo che sia il numero di utilizzo dei componenti che il numero di utilizzo dei file hanno raggiunto zero è un file eliminato fisicamente. Alcuni file in un componente possono essere eliminati e altri non eliminati, a seconda che i file vengano usati da altre applicazioni che hanno incrementato il numero di utilizzo dei file.
SQLRemoveDriver viene chiamato anche come parte di un processo di aggiornamento. Se un'applicazione rileva che deve eseguire un aggiornamento e ha installato in precedenza il driver, il driver deve essere rimosso e quindi reinstallato. SQLRemoveDriver deve prima essere chiamato per decrementare il numero di utilizzo dei componenti e quindi è necessario chiamare SQLInstallDriverEx per incrementare il numero di utilizzo dei componenti. Il programma di installazione dell'applicazione deve sostituire i file precedenti con i nuovi file. Il numero di utilizzo dei file rimarrà invariato e altre applicazioni che usano i file di versione meno recenti useranno ora la versione più recente.
Funzioni correlate
Per informazioni su | Vedere |
---|---|
Aggiunta, modifica o rimozione di un driver | ConfigDriver (nella DLL di installazione) |
Aggiunta, modifica o rimozione di un driver | SQLConfigDriver |
Installazione di un driver | SQLInstallDriverEx |