Подсчет использования
Примечание.
Начиная с Windows XP и Windows Server 2003, ODBC входит в операционную систему Windows. Необходимо явно установить ODBC только в более ранних версиях Windows.
В реестре каждого компонента хранятся два типа счетчиков использования: количество использования компонентов и количество дополнительных файлов. Количество использования компонентов помогает установщику поддерживать записи реестра. Он хранится в значении UsageCount в подразделах ODBC Core, driver и translator. Формат значения UsageCount и дополнительные сведения об этих подразделах см . в разделах реестра для компонентов ODBC.
При первом установке компонента библиотека DLL установщика создает подключ для него и задает данные для значения UsageCount в этом подразделе значение 1. При повторном установке компонента библиотека DLL установщика увеличивает количество использования. При удалении компонента библиотека DLL установщика уменьшает количество использования. Если число использования меньше 0, библиотека DLL установщика удаляет вложенный ключ для компонента.
Внимание
Приложение не должно физически удалять файлы диспетчера драйверов, когда число использования компонентов и число использования файлов достигает нуля.
Счетчики использования файлов помогают определить, когда файл должен быть скопирован или удален в отличие от увеличения или уменьшения количества использования. Это важно, так как компоненты ODBC и, следовательно, файлы в компонентах ODBC совместно используются и могут быть установлены или удалены различными приложениями. Приложение может удалить файлы драйверов и переводчиков, если число использования компонентов и число использования файлов достигает нуля. Однако файлы диспетчера драйверов не должны удаляться, если число использования компонентов и количество файлов достигло нуля, так как эти файлы могут использоваться другими приложениями, которые не увеличивают число использования файлов.
Примечание.
Количество использования файлов является необязательным в Microsoft Windows NT/Windows 2000.
Количество использования файлов поддерживается программой установки после вызова SQLInstallDriverManager, SQLInstallDriverEx, SQLInstall Переводчик Ex, SQLRemoveDriverManager, SQLRemoveDriver или SQLRemoveDriver Переводчик.
При первом установке компонента программа установки или библиотека DLL установщика создает значение под следующим ключом для каждого файла в этом компоненте, который еще не находится в системе:
Примечание.
HKEY_LOCAL_MACHINE
ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ
Microsoft
Windows
CurrentVersion
SharedDlls
Он задает для этих значений значение 1 и копирует файл в систему. При повторном установке компонента программа установки или библиотека DLL установщика увеличивает количество использования. При удалении компонента программа установки или библиотека DLL установщика уменьшает количество использования. Если количество использования меньше 0, программа установки или библиотека DLL установщика удаляет значение файла, а если компонент является драйвером или переводчиком, удаляет файл. Файлы диспетчера драйверов не следует удалять.
Формат значения количества использования файлов показан в следующей таблице.
Имя. | Тип данных | Data |
---|---|---|
полный путь | REG_DWORD | count |
Например, предположим, что драйвер Для Informix использует файлы Infrmx32.dll и Infrmx32.hlp, и предположим, что этот драйвер установлен дважды. Значения в подразделе SharedDlls для драйвера Informix будут следующим образом:
C:\WINDOWS\SYSTEM32\INFRMX32.DLL : REG_DWORD : 0x2
C:\WINDOWS\SYSTEM32\INFRMX32.HLP : REG_DWORD : 0x2