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.
Verwandte Funktionen
Informationen über | Finden Sie unter |
---|---|
Zurückgeben von Treiberbeschreibungen und Attributen | SQLDrivers |