Dela via


Användningsräkning

Anmärkning

Från och med Windows XP och Windows Server 2003 ingår ODBC i Windows-åtgärdssystemet. Du bör endast uttryckligen installera ODBC i tidigare versioner av Windows.

Två typer av användningsantal underhålls i registret för varje komponent: ett antal komponentanvändningar och en eller flera valfria filanvändningsantal. Antalet komponentanvändningar hjälper installationsprogrammets DLL att underhålla registerposter. Den lagras i UsageCount-värdet under undernycklarna ODBC Core, drivrutinen och translatorn. Formatet för UsageCount-värdet och mer information om dessa undernycklar finns i Registerposter för ODBC-komponenter.

När en komponent först installeras skapar installationsprogrammets DLL en undernyckel för den och anger data för UsageCount-värdet i undernyckeln till 1. När komponenten installeras igen ökar installationsprogrammets DLL användningsantal. När komponenten tas bort minskar installationsprogrammets DLL användningsantal. Om användningsantalet är 0 tar installationsprogrammets DLL bort undernyckeln för komponenten.

Försiktighet

Ett program bör inte fysiskt ta bort Driver Manager-filer när antalet komponenter och antalet filanvändningar når noll.

Antal filanvändningar hjälper dig att avgöra när en fil faktiskt måste kopieras eller tas bort i stället för att öka eller minska användningsantalet. Detta är viktigt eftersom ODBC-komponenter och därför filerna i ODBC-komponenter delas och kan installeras eller tas bort av en mängd olika program. Programmet kan ta bort drivrutins- och translator-filer om antalet komponenter och antalet filanvändningar når noll. Driver Manager-filer bör dock inte tas bort när både antalet komponenter och antalet filanvändningar har nått noll, eftersom dessa filer kan användas av andra program som inte har ökat antalet filanvändningar.

Anmärkning

Antal filanvändningar är valfria i Microsoft Windows NT/Windows 2000.

Filanvändningsräknare underhålls av installationsprogrammet när det anropar SQLInstallDriverManager, SQLInstallDriverEx, SQLInstallTranslatorEx, SQLRemoveDriverManager, SQLRemoveDriver eller SQLRemoveTranslator.

När en komponent först installeras skapar installationsprogrammet eller installations-DLL ett värde under följande nyckel för varje fil i komponenten som inte redan finns i systemet:

Anmärkning

HKEY_LOCAL_MACHINE

PROGRAMVARA

Microsoft

Windows

CurrentVersion

SharedDlls

Den anger data för dessa värden till 1 och kopierar filen till systemet. När komponenten installeras igen ökar installations- eller installations-DLL-filen användningsantalet. När komponenten tas bort minskar installationsprogrammet eller installations-DLL användningsantalet. Om användningsantalet är 0 tar installationsprogrammet eller installationsprogrammets DLL bort värdet för filen och tar bort filen om komponenten är en drivrutin eller en översättare. Driver Manager-filer bör inte tas bort.

Formatet för värdet för antal filanvändningar visas i följande tabell.

Namn Datatyp Uppgifter
fullständig sökväg REG_DWORD antal

Anta till exempel att en drivrutin för Informix använder filerna Infrmx32.dll och Infrmx32.hlp och antar att drivrutinen har installerats två gånger. Värdena under undernyckeln SharedDlls för Informix-drivrutinen är följande:

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