Partager via


SQLGetInstalledDrivers, fonction

Conformité
Version introduite : ODBC 1.0

Résumé
SQLGetInstalledDrivers lit la section [Pilotes ODBC] des informations système et retourne une liste de descriptions des pilotes installés.

Syntaxe

  
BOOL SQLGetInstalledDrivers(  
     LPSTR   lpszBuf,  
     WORD    cbBufMax,  
     WORD *  pcbBufOut);  

Arguments

lpszBuf
[Sortie] Liste des descriptions des pilotes installés. Pour plus d’informations sur la structure de liste, consultez « Commentaires ».

cbBufMax
[Entrée] Longueur de lpszBuf.

pcbBufOut
[Sortie] Nombre total d’octets (à l’exception de l’octet de terminaison Null) retournés dans lpszBuf. Si le nombre d’octets disponibles à retourner est supérieur ou égal à cbBufMax, la liste des descriptions de pilotes dans lpszBuf est tronquée en cbBufMax moins le caractère d’arrêt Null. L’argument pcbBufOut peut être un pointeur Null.

Retours

La fonction retourne TRUE si elle réussit, FALSE en cas d’échec.

Diagnostics

Lorsque SQLGetInstalledDrivers 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 avait pas d’erreur de programme d’installation spécifique.
ODBC_ERROR_INVALID_BUFF_LEN Longueur de la mémoire tampon non valide L’argument lpszBuf était NULL ou non valide, ou l’argument cbBufMax était inférieur ou égal à 0.
ODBC_ERROR_COMPONENT_NOT_FOUND Composant introuvable dans le Registre Le programme d’installation n’a pas trouvé la section [Pilotes ODBC] dans le Registre.
ODBC_ERROR_OUT_OF_MEM Mémoire insuffisante Le programme d’installation n’a pas pu effectuer la fonction en raison d’un manque de mémoire.

Commentaires

Chaque description de pilote se termine par un octet Null, et la liste entière est terminée par un octet Null. (Autrement dit, deux octets null marquent la fin de la liste.) Si la mémoire tampon allouée n’est pas suffisamment grande pour contenir la liste entière, la liste est tronquée sans erreur. Une erreur est retournée si un pointeur Null est passé en tant que lpszBuf.

Pour obtenir des informations sur Consultez
Retour des descriptions et des attributs des pilotes SQLDrivers