SQLRemoveTranslator-Funktion
Konformität
Version eingeführt: ODBC 3.0
Zusammenfassung
SQLRemoveTranslator entfernt Informationen zu einem Übersetzer aus dem Odbcinst.ini Abschnitt der Systeminformationen und verringert die Anzahl der Komponentenverwendung des Übersetzers um 1.
Syntax
BOOL SQLRemoveTranslator(
LPCSTR lpszTranslator,
LPDWORD lpdwUsageCount);
Argumente
lpszTranslator
[Eingabe] Der Name des Übersetzers, der im Odbcinst.ini Schlüssel der Systeminformationen registriert ist.
lpdwUsageCount
[Ausgabe] Die Nutzungsanzahl des Übersetzers, nachdem diese Funktion aufgerufen wurde.
Gibt zurück
Die Funktion gibt TRUE zurück, wenn sie erfolgreich ist, FALSE, wenn sie fehlschlägt. Wenn beim Aufruf dieser Funktion kein Eintrag in den Systeminformationen vorhanden ist, gibt die Funktion FALSE zurück.
Diagnose
Wenn SQLRemoveTranslator 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_COMPONENT_NOT_FOUND | Komponente nicht in der Registrierung gefunden | Das Installationsprogramm konnte die Übersetzerinformationen nicht entfernen, da sie entweder nicht in der Registrierung vorhanden waren oder nicht in der Registrierung gefunden werden konnten. |
ODBC_ERROR_INVALID_NAME | Ungültiger Treiber- oder Übersetzername | Das lpszTranslator-Argument war ungültig. |
ODBC_ERROR_USAGE_UPDATE_FAILED | Die Anzahl der Komponentennutzung konnte nicht erhöht oder verringert werden. | Das Installationsprogramm konnte die Nutzungsanzahl des Treibers nicht erhöhen. |
ODBC_ERROR_OUT_OF_MEM | Nicht genügend Arbeitsspeicher. | Das Installationsprogramm konnte die Funktion aufgrund eines Mangels an Arbeitsspeicher nicht ausführen. |
Kommentare
SQLRemoveTranslator ergänzt die SQLInstallTranslatorEx-Funktion und aktualisiert die Anzahl der Komponentennutzung in den Systeminformationen. Diese Funktion sollte nur von einer Setupanwendung aufgerufen werden.
SQLRemoveTranslator dekrementiert die Anzahl der Komponentennutzung um 1. Wenn die Anzahl der Komponentennutzung auf 0 lautet, wird der Übersetzereintrag in den Systeminformationen entfernt. Der Übersetzereintrag befindet sich unter dem Namen des Übersetzers am folgenden Speicherort in den Systeminformationen:
HKEY_LOCAL_MACHINE
SOFTWARE
ODBC
Odbcinst.ini
SQLRemoveTranslator entfernt eigentlich keine Dateien. Das aufrufende Programm ist für das Löschen von Dateien und die Verwaltung der Anzahl der Dateinutzung verantwortlich. Erst nachdem sowohl die Anzahl der Komponentennutzung als auch die Anzahl der Dateinutzungen 0 erreicht haben, wird eine Datei physisch gelöscht. Einige Dateien in einer Komponente können gelöscht und andere nicht gelöscht werden, je nachdem, ob die Dateien von anderen Anwendungen verwendet werden, die die Anzahl der Dateinutzung erhöht haben.
SQLRemoveTranslator wird auch im Rahmen eines Upgradeprozesses aufgerufen. Wenn eine Anwendung erkennt, dass sie ein Upgrade durchführen muss und den Treiber zuvor installiert hat, sollte der Treiber entfernt und dann erneut installiert werden. SQLRemoveTranslator sollte zuerst aufgerufen werden, um die Anzahl der Komponentennutzung zu verringern, und dann sqlInstallTranslatorEx sollte aufgerufen werden, um die Anzahl der Komponentennutzung zu erhöhen. Das Anwendungsprogramm muss die alten Dateien physisch durch die neuen Dateien ersetzen. Die Anzahl der Dateiverwendungen bleibt unverändert, und andere Anwendungen, die dateien der älteren Version verwenden, verwenden jetzt die neuere Version.
Verwandte Funktionen
Informationen über | Finden Sie unter |
---|---|
Installieren eines Übersetzers | SQLInstallTranslatorEx |