Teilen über


SQLGetTranslator-Funktion

Konformität
Version eingeführt: ODBC 2.0

Zusammenfassung
SQLGetTranslator zeigt ein Dialogfeld an, in dem ein Benutzer einen Übersetzer auswählen kann.

Syntax

  
BOOL SQLGetTranslator(  
     HWND      hwndParent,  
     LPSTR     lpszName,  
     WORD      cbNameMax,  
     WORD *    pcbNameOut,  
     LPSTR     lpszPath,  
     WORD      cbPathMax,  
     WORD *    pcbPathOut,  
     DWORD *   pvOption);  

Argumente

hwndParent
[Eingabe] Übergeordnetes Fensterhandle.

lpszName
[Eingabe/Ausgabe] Name des Übersetzers aus den Systeminformationen.

cbNameMax
[Eingabe] Maximale Länge des lpszName-Puffers .

pcbNameOut
[Eingabe/Ausgabe] Gesamtanzahl von Bytes (mit Ausnahme des Null-Terminierungsbytes), die in lpszName übergeben oder zurückgegeben wurden. Wenn die Anzahl der zurückzugebenden Bytes größer oder gleich cbNameMax ist, wird der Übersetzername in lpszName in cbNameMax abgeschnitten, abzüglich des Null-Terminierungszeichens. Das pcbNameOut-Argument kann ein NULL-Zeiger sein.

lpszPath
[Ausgabe] Vollständiger Pfad der Übersetzungs-DLL.

cbPathMax
[Eingabe] Maximale Länge des lpszPath-Puffers .

pcbPathOut
[Ausgabe] Gesamtanzahl der in lpszPath zurückgegebenen Bytes (mit Ausnahme des Null-Terminierungsbytes). Wenn die Anzahl der zurückzugebenden Bytes größer oder gleich cbPathMax ist, wird der Übersetzungs-DLL-Pfad in lpszPath auf cbPathMax abgeschnitten, abzüglich des Null-Terminierungszeichens. Das argument pcbPathOut kann ein NULL-Zeiger sein.

pvOption
[Ausgabe] 32-Bit-Übersetzungsoption.

Gibt zurück

Die Funktion gibt TRUE zurück, wenn sie erfolgreich ist, FALSE, wenn sie fehlschlägt oder wenn der Benutzer das Dialogfeld abbricht.

Diagnose

Wenn SQLGetTranslator 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 die einzelnen Werte im Kontext dieser Funktion werden erläutert.

*pfErrorCode Fehler BESCHREIBUNG
ODBC_ERROR_GENERAL_ERR Allgemeiner Installationsfehler Es ist ein Fehler aufgetreten, für den kein spezifischer Installerfehler aufgetreten ist.
ODBC_ERROR_INVALID_BUFF_LEN Ungültige Pufferlänge Das Argument cbNameMax oder cbPathMax war kleiner oder gleich 0.
ODBC_ERROR_INVALID_HWND Ungültiges Fensterhandle Das Argument hwndParent war ungültig oder NULL.
ODBC_ERROR_INVALID_NAME Ungültiger Treiber- oder Übersetzername Das lpszName-Argument war ungültig. Es konnte nicht in der Registrierung gefunden werden.
ODBC_ERROR_LOAD_LIBRARY_FAILED Die Setupbibliothek des Treibers oder des Übersetzers konnte nicht geladen werden. Die Übersetzerbibliothek konnte nicht geladen werden.
ODBC_ERROR_INVALID_OPTION Ungültige Transaktionsoption Das pvOption-Argument enthielt einen ungültigen Wert.
ODBC_ERROR_OUT_OF_MEM Nicht genügend Arbeitsspeicher. Das Installationsprogramm konnte die Funktion aufgrund eines Mangels an Arbeitsspeicher nicht ausführen.

Kommentare

Wenn hwndParent NULL ist oder lpszName, lpszPath oder pvOption ein NULL-Zeiger ist, gibt SQLGetTranslator FALSE zurück. Andernfalls wird die Liste der installierten Übersetzer im folgenden Dialogfeld angezeigt.

Dialogfeld

Wenn lpszName einen gültigen Übersetzernamen enthält, ist er ausgewählt. Andernfalls <ist Kein Übersetzer> ausgewählt.

Wenn der Benutzer No Translator> wählt<, werden die Inhalte von lpszName, lpszPath und pvOption nicht berührt. SQLGetTranslator legt pcbNameOut und pcbPathOut auf 0 fest und gibt TRUE zurück.

Wenn der Benutzer einen Übersetzer auswählt, ruft SQLGetTranslatorConfigTranslator in der Setup-DLL des Übersetzers auf. Wenn ConfigTranslator FALSE zurückgibt, kehrt SQLGetTranslator zum zugehörigen Dialogfeld zurück. Wenn ConfigTranslator TRUE zurückgibt, gibt SQLGetTranslator TRUE zurück, zusammen mit dem ausgewählten Übersetzernamen, Pfad und Übersetzungsoption.

Informationen über Finden Sie unter
Konfigurieren eines Übersetzers ConfigTranslator
Abrufen eines Übersetzungsattributs SQLGetConnectAttr
Festlegen eines Übersetzungsattributs SQLSetConnectAttr