Хранилище драйверов

Начиная с Windows Vista, хранилище драйверов — это доверенный набор пакетов драйверов для папки "Входящие" и сторонних поставщиков. Операционная система хранит эту коллекцию в безопасном расположении на локальном жестком диске. На устройстве можно установить только пакеты драйверов из хранилища драйверов.

При копировании пакета драйвера в хранилище драйверов копируются все его файлы. Сюда входит INF-файл и все файлы, на которые ссылается INF-файл. Все файлы, которые находятся в пакете драйверов, считаются критически важными для установки устройства. INF-файл должен ссылаться на все необходимые файлы для установки устройства, чтобы они присутствовали в хранилище драйверов. Если INF-файл ссылается на файл, который не включен в пакет драйверов, пакет драйвера не копируется в хранилище.

Процесс копирования пакета драйверов в хранилище драйверов называется промежуточным. Пакет драйверов должен быть подготовлен в хранилище драйверов, прежде чем пакет можно будет использовать для установки любых устройств. В результате промежуточная установка драйвера и установка устройства являются отдельными операциями.

Пакет драйверов выполняется путем проверки и проверки в хранилище драйверов.

Проверка целостности пакета драйвера

Перед отправкой пакета драйвера в хранилище драйверов операционная система сначала проверяет, является ли пакет драйвера доверенным. Чтобы пакет драйвера считался доверенным, INF-файл должен иметь директиву CatalogFile в разделе Version , которая предоставляет имя файла каталога , связанного с INF-файлом. Файл каталога должен содержать хэши для INF-файла, а все файлы, на которые ссылается INF-файл, и файл каталога должны быть подписаны доверенной цифровой подписью. Дополнительные сведения о цифровых подписях см. в разделе Подписывание драйверов.

Проверка пакета драйвера

Операционная система проверяет пакет драйвера следующими способами:

  • Текущий пользователь должен иметь разрешение на установку пакета драйверов.
  • INF-файл пакета драйвера синтаксически корректный, а все файлы, на которые ссылается INF-файлы, присутствуют в пакете драйвера.

После того как пакет драйвера прошел проверку целостности и синтаксиса, он копируется в хранилище драйверов. После этого операционная система использует пакет драйверов для автоматической установки новых устройств без необходимости взаимодействия с пользователем.

После размещения файлов в хранилище драйверов их нельзя удалять или изменять каким-либо образом. Кроме того, новые файлы не следует добавлять в хранилище драйверов за пределами промежуточного процесса. Это относится к добавлению, удалению или изменению файлов непосредственно с помощью программных вызовов или косвенно через директивы INF, которые будут обрабатываться позже.