Partager via


SQLRemoveDriverManager, fonction

Conformité
Version introduite : ODBC 3.0 : déconseillée dans Windows XP Service Pack 2, Windows Server 2003 Service Pack 1 et les systèmes d’exploitation ultérieurs.

Résumé
SQLRemoveDriverManager modifie ou supprime des informations sur les composants principaux ODBC de l’entrée Odbcinst.ini dans les informations système.

Syntaxe

  
BOOL SQLRemoveDriverManager(  
     LPDWORD     pdwUsageCount);  

Arguments

pdwUsageCount
[Sortie] Nombre d’utilisation du Gestionnaire de pilotes après l’appel de cette fonction.

Retours

La fonction retourne TRUE si elle réussit, et FALSE si elle échoue. Si aucune entrée n’existe dans les informations système lorsque cette fonction est appelée, la fonction retourne FALSE.

Diagnostics

Lorsque SQLRemoveDriverManager retourne FALSE, une valeur *pfErrorCode associée peut être obtenue en appelant SQLInstallerError. Le tableau suivant répertorie les valeurs *pfErrorCode qui peuvent être retournées par SQLInstallerError et explique chacune d’elles dans le contexte de cette fonction.

*pfErrorCode Error Description
ODBC_ERROR_GENERAL_ERR Erreur générale du programme d’installation Une erreur s’est produite pour laquelle il n’y a pas eu d’erreur de programme d’installation spécifique.
ODBC_ERROR_COMPONENT_NOT_FOUND Composant introuvable dans le Registre Le programme d’installation n’a pas pu supprimer les informations du Gestionnaire de pilotes, car elles n’existaient pas dans le Registre ou étaient introuvables dans le Registre.
ODBC_ERROR_USAGE_UPDATE_FAILED Impossible d’incrémenter ou de décrémenter le nombre d’utilisation des composants Le programme d’installation n’a pas réussi à décrémenter le nombre d’utilisation du Gestionnaire de pilotes.
ODBC_ERROR_OUT_OF_MEM Mémoire insuffisante Le programme d’installation n’a pas pu exécuter la fonction en raison d’un manque de mémoire.

Commentaires

SQLRemoveDriverManager complète la fonction SQLInstallDriverManager et met à jour le nombre d’utilisation des composants dans les informations système. Cette fonction doit être appelée uniquement à partir d’une application d’installation.

SQLRemoveDriverManager décrémente le nombre d’utilisation des composants principaux de 1. Si le nombre d’utilisation des composants passe à 0, les informations du système d’entrée sont supprimées. L’entrée du composant principal se trouve à l’emplacement suivant dans les informations système, sous le titre « ODBC Core » :

HKEY_LOCAL_MACHINE

SOFTWARE

ODBC

Odbcinst.ini

Attention

Une application ne doit pas supprimer physiquement les fichiers Driver Manager lorsque le nombre d’utilisation des composants et le nombre d’utilisation des fichiers atteignent zéro.

SQLRemoveDriverManager ne supprime pas réellement les fichiers. Le programme appelant est responsable de la suppression des fichiers et de la maintenance du nombre d’utilisation des fichiers. Toutefois, les fichiers du Gestionnaire de pilotes ne doivent pas être supprimés lorsque le nombre d’utilisation des composants et le nombre d’utilisation des fichiers ont atteint zéro, car ces fichiers peuvent être utilisés par d’autres applications qui n’ont pas incrémenté le nombre d’utilisation des fichiers.

SQLRemoveDriverManager est appelé dans le cadre du processus de désinstallation. Les composants principaux ODBC (qui incluent le Gestionnaire de pilotes, la bibliothèque de curseurs, le programme d’installation, la bibliothèque de langues, l’administrateur, les fichiers thunking, etc.) sont désinstallés dans leur ensemble. Les fichiers suivants ne sont pas supprimés lorsque SQLRemoveDriverManager est appelé dans le cadre du processus de désinstallation :

ODBC32DLL
ODBCCR32.DLL
ODBCCU32.DLL
ODBCINT.DLL
ODBCTRAC.DLL
MSVCRT40.DLL
ODBCCP32.CPL

ODBCCP32.DLL
ODBC16GT.DLL
ODBC32GT.DLL
DS16GT.DLL
DS32GT.DLL
ODBCAD32.EXE

SQLRemoveDriverManager est également appelé dans le cadre d’un processus de mise à niveau. Si une application détecte qu’elle doit effectuer une mise à niveau et qu’elle a déjà installé le pilote, le pilote doit être supprimé, puis réinstallé.

SQLRemoveDriverManager doit d’abord être appelé pour décrémenter le nombre d’utilisation des composants. SQLInstallDriverEx doit ensuite être appelé pour incrémenter le nombre d’utilisation des composants. Le programme d’installation de l’application doit remplacer les anciens fichiers de composants de base par les nouveaux fichiers. Le nombre d’utilisation des fichiers reste le même, et les autres applications qui utilisent les anciens fichiers de composants de base utilisent désormais les fichiers de version plus récents.

Pour obtenir des informations sur Consultez
Installation d’un gestionnaire de pilotes SQLInstallDriverManager