Freigeben über


SQLGetInstalledDrivers-Funktion

Konformität
Eingeführte Version: ODBC 1.0

Zusammenfassung
SQLGetInstalledDrivers liest den Abschnitt [ODBC Drivers] der Systeminformationen und gibt eine Liste der Beschreibungen der installierten Treiber zurück.

Syntax

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

Argumente

lpszBuf
[Ausgabe] Liste der Beschreibungen der installierten Treiber. Informationen zur Listenstruktur finden Sie unter Kommentare.

cbBufMax
[Eingabe] Länge von lpszBuf.

pcbBufOut
[Ausgabe] Gesamtanzahl der bytes (ohne null-terminierung byte), die in lpszBuf zurückgegeben werden. Wenn die Anzahl der zurückzugebenden Bytes größer oder gleich cbBufMax ist, wird die Liste der Treiberbeschreibungen in lpszBuf incbBufMax abgeschnitten, abzüglich des NULL-Terminierungszeichens. Das argument pcbBufOut kann ein NULL-Zeiger sein.

Gibt zurück

Die Funktion gibt TRUE zurück, wenn sie erfolgreich ist, FALSE, wenn sie fehlschlägt.

Diagnose

Wenn SQLGetInstalledDrivers FALSE zurückgibt, kann ein zugeordneter *pfErrorCode-Wert abgerufen werden, indem SQLInstallerError aufgerufen wird. In der folgenden Tabelle sind die *pfErrorCode-Werte aufgeführt, die von SQLInstallerError zurückgegeben werden können, und erläutert die einzelnen Werte im Kontext dieser Funktion.

*pfErrorCode Fehler BESCHREIBUNG
ODBC_ERROR_GENERAL_ERR Allgemeiner Installationsfehler Es ist ein Fehler aufgetreten, für den kein spezifischer Installationsfehler aufgetreten ist.
ODBC_ERROR_INVALID_BUFF_LEN Ungültige Pufferlänge Das argument lpszBuf war NULL oder ungültig, oder das argument cbBufMax war kleiner oder gleich 0.
ODBC_ERROR_COMPONENT_NOT_FOUND Komponente in der Registrierung nicht gefunden Das Installationsprogramm konnte den Abschnitt [ODBC Drivers] in der Registrierung nicht finden.
ODBC_ERROR_OUT_OF_MEM Nicht genügend Arbeitsspeicher. Das Installationsprogramm konnte die Funktion aufgrund eines Mangels an Arbeitsspeicher nicht ausführen.

Kommentare

Jede Treiberbeschreibung wird mit einem NULL-Byte beendet, und die gesamte Liste wird mit einem NULL-Byte beendet. (Das heißt, zwei NULL-Bytes markieren das Ende der Liste.) Wenn der zugeordnete Puffer nicht groß genug ist, um die gesamte Liste zu enthalten, wird die Liste ohne Fehler abgeschnitten. Ein Fehler wird zurückgegeben, wenn ein NULL-Zeiger als lpszBuf übergeben wird.

Informationen über Finden Sie unter
Zurückgeben von Treiberbeschreibungen und Attributen SQLDrivers