Freigeben über


Zählen der Verwendung

Hinweis

Ab Windows XP und Windows Server 2003 ist ODBC im Windows-Betriebssystem enthalten. Sie sollten ODBC explizit nur bei früheren Versionen von Windows installieren.

In der Registrierung werden für jede Komponente zwei Arten von Verwendungszählern geführt: ein Komponenten-Verwendungszähler und ein oder mehrere optionale Datei-Verwendungszähler. Der Komponenten-Verwendungszähler erleichtert der Installationsprogramm-DLL das Führen von Registrierungseinträgen. Er wird im Wert UsageCount unter den Unterschlüsseln für ODBC Core, Treiber und Translator gespeichert. Informationen zum Format des Werts UsageCount und weitere Informationen zu diesen Unterschlüsseln finden Sie unter Registrierungseinträge für ODBC-Komponenten.

Beim erstmaligen Installieren einer Komponente erstellt die Installationsprogramm-DLL einen Unterschlüssel für sie und setzt die Daten für den Wert UsageCount in diesem Unterschlüssel auf 1. Wenn die Komponente erneut installiert wird, erhöht die Installationsprogramm-DLL den Verwendungszähler. Wenn die Komponente entfernt wird, verringert die Installationsprogramm-DLL den Verwendungszähler. Wenn der Verwendungszähler auf 0 zurückgeht, entfernt die Installationsprogramm-DLL den Unterschlüssel für die Komponente.

Achtung

Eine Anwendung sollte Treiber-Manager-Dateien nicht physisch entfernen, wenn der Komponenten-Verwendungszähler und der Datei-Verwendungszähler den Wert null erreichen.

Anhand der Verwendungszähler lässt sich bestimmen, wann eine Datei kopiert oder gelöscht werden muss, anstatt den Verwendungszähler zu erhöhen oder zu verringern. Das ist wichtig, weil ODBC-Komponenten und daher auch die Dateien in ODBC-Komponenten gemeinsam genutzt werden und von einer Vielzahl von Anwendungen installiert oder entfernt werden können. Die Anwendung kann Treiber- und Translatordateien löschen, wenn der Komponenten-Verwendungszähler und der Datei-Verwendungszähler den Wert null erreichen. Treiber-Manager-Dateien sollten jedoch nicht gelöscht werden, wenn der Komponenten-Verwendungszähler und der Datei-Verwendungszähler beide den Wert null erreicht haben, da diese Dateien von anderen Anwendungen verwendet werden können, die den Datei-Verwendungszähler nicht erhöht haben.

Hinweis

Bei Microsoft Windows NT/Windows 2000 sind Datei-Verwendungszähler optional.

Die Datei-Verwendungszähler werden vom Setupprogramm geführt, nach Aufrufen von SQLInstallDriverManager, SQLInstallDriverEx, SQLInstallTranslatorEx, SQLRemoveDriverManager, SQLRemoveDriver oder SQLRemoveTranslator.

Beim erstmaligen Installieren einer Komponente erstellt das Setupprogramm oder die Installationsprogramm-DLL einen Wert unter dem folgenden Schlüssel für jede Datei in dieser Komponente, die noch nicht im System ist:

Hinweis

HKEY_LOCAL_MACHINE

SOFTWARE

Microsoft

Windows

CurrentVersion

SharedDlls

Die Daten für diese Werte werden auf 1 gesetzt, und die Datei wird in das System kopiert. Wenn die Komponente erneut installiert wird, erhöht das Setupprogramm oder die Installationsprogramm-DLL die Verwendungszähler. Wenn die Komponente entfernt wird, verringert das Setupprogramm oder die Installationsprogramm-DLL die Verwendungszähler. Wenn ein Verwendungszähler auf 0 zurückgeht, entfernt das Setupprogramm oder die Installationsprogramm-DLL den Wert für die Datei und löscht die Datei, wenn es sich bei der Komponente um einen Treiber oder Translator handelt. Treiber-Manager-Dateien sollten nicht gelöscht werden.

Das Format für den Wert des Datei-Verwendungszählers ist der folgenden Tabelle zu entnehmen.

Name Datentyp Daten
full-path REG_DWORD count

Nehmen wir zum Beispiel an, ein Treiber für Informix verwendet die Dateien Infrmx32.dll und Infrmx32.hlp und dieser Treiber wurde zweimal installiert. Unter dem Unterschlüssel „SharedDlls“ hätte der Informix-Treiber die folgenden Werte:

C:\WINDOWS\SYSTEM32\INFRMX32.DLL : REG_DWORD : 0x2  
C:\WINDOWS\SYSTEM32\INFRMX32.HLP : REG_DWORD : 0x2