Каталог расширений

Популярные теги

3gp       avi       fb2       jpg       mp3       pdf      

Файл inf как установить


Установка драйвера из INF-файла. Установка, настройка и восстановление Windows 7 на 100%

Установка драйвера из INF-файла

Рассмотрим ситуацию, когда для установки оборудования используется набор из INF-файлов.

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

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

Наша задача – установить драйвер для устройства, не обнаруженного операционной системой. Если устройство еще не подключено к компьютеру, самое время это сделать.

Если устройство уже подключено к компьютеру, то щелкните правой кнопкой мыши на названии компьютера в самом верху списка и в появившемся меню выберите пункт Установить старое устройство (рис. 16.2). Это приведет к запуску мастера установки оборудования, который будет вам помогать и направлять ваши действия при установке оборудования (рис. 16.3).

Рис. 16.1. Запускаем механизм Диспетчер устройств

Рис. 16.2. Выбираем пункт Установить старое устройство

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

Рис. 16.3. Мастер установки оборудования

Мастер установки на выбор предлагает два варианта дальнейших действий: автоматическую и ручную установку оборудования (рис. 16.4). Автоматическая установка ничего не даст, так как операционная система уже пыталась сделать это в процессе установки. По этой причине сразу же необходимо переходить ко второму варианту действий. Установите переключатель в положение Установка оборудования, выбранного из списка вручную и нажмите кнопку Далее.

Рис. 16.4. Выбираем вариант действия

В следующем окне вы увидите список устройств разного типа, драйверы к которым имеются в операционной системе (рис. 16.5).

Рис. 16.5. Указываем тип устройства, которое нужно установить

Рассмотрим сначала вариант, когда вы обнаружили в списке производителей и драйверов нужный вам драйвер. Отметив его, нажмите кнопку Далее, чтобы перейти к его установке.

В следующем окне мастер установки оборудования покажет список всех имеющихся в системе драйверов для выбранного типа устройства, отсортированных по производителю оборудования. Если вы уверены в том, что для вашего оборудования подойдет один из предложенных драйверов, то в левой части окна выберите нужного производителя, а в правой – необходимый драйвер. После этого можно попробовать его установить, нажав кнопку Далее (рис. 16.6). Это приведет к появлению подтверждающего окна, в котором еще раз нужно нажать кнопку Далее (рис. 16.7).

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

Рис. 16.6. Указываем драйвер для устройства

Рис. 16.7. Подтверждаем установку драйвера

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

Рис. 16.8. Неудачная установка драйвера

Чтобы установить другой драйвер, нажмите кнопку Установить с диска (см. рис. 16.6). В результате появится окно, в котором нужно нажать кнопку Обзор (рис. 16.9) и в открывшемся окне выбора файла указать расположение файла с драйвером.

Рис. 16.9. Устанавливаем драйвер из другого источника

После нажатия кнопки ОК мастер попытается установить драйвер. Если данный драйвер сможет работать в Windows 7, он будет установлен и устройство сможет функционировать.

Данный текст является ознакомительным фрагментом.

Читать книгу целиком

Поделитесь на страничке

Ошибка установки драйвера «Выбранный INF-файл не поддерживает этот метод установки»

Известно, что драйвера устройств могут быть установлены разными способами. Большая часть драйверов устанавливается как обычные программы, то есть запуском исполняемого файла EXE, но есть также и драйвера, которые не используют этот тип контейнера, и в таких случаях их установка выполняется через конфигурационный файл INF. Всё просто, пользователь кликает ПКМ по INF-файлу и выбирает в меню опцию «Установить».

Но представьте себе ситуацию, когда при попытке установить таким образом драйвер вы получаете ошибку «Выбранный INF-файл не поддерживает этот метод установки».

В чём может быть причина данной ошибки и как её устранить?

Несовместимость с разрядностью системы

С подобной проблемой вы можете столкнуться при попытке установить драйвер, несовместимый с разрядностью ОС. Если вы скачали драйвер с официального или стороннего сайта, убедитесь, что он совместим с вашей версией системы. Если вы не знаете разрядность вашей ОС, откройте командой msinfo32 утилиту “Сведения о системе” и посмотрите значение опции «Тип».

«Компьютер на базе x86» будет означать, что система 32-разрядная, значение «Компьютер на базе x64» укажет, что система 64-разрядная.

Конфигурационный INF-файл не имеет раздела DefaultInstall

Другой распространенной причиной ошибки является отсутствие в INF-файле таких разделов как DefaultInstall или DefaultInstall.Service. Убедиться в их наличие или отсутствие не составляет труда, нужно просто открыть INF-файл и изучить его содержимое, вернее, проверить заголовки в квадратных скобках.

Но отсутствие указанных разделов ещё не означает, что установить драйвер нельзя в принципе.

Для установки драйверов с такими INF-файлами следует использовать диспетчер устройств, только нужно знать, какому устройству принадлежит драйвер.

Откройте диспетчер устройств, выберите нужное устройство, кликните по нему правой кнопкой мыши и выберите «Обновить драйвер».

Далее идем по цепочке этих опций:

Драйвер может быть установлен только через командную строку

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

Запустите классическую командную строку с повышенными привилегиями и выполните в ней следующую команду:

rundll32 syssetup,SetupInfObjectInstallAction DefaultInstall 128 "Путь к файлу INF"

Вариант, приведенный последним, как и использование консольной утилиты PNPUTIL – это альтернатива, обычно драйвер удается благополучно установить через Диспетчер устройств.

Выбранный вами INF-файл не поддерживает этот метод ошибки установки в Windows 10/8/7.

Если вы пытаетесь установить драйвер с помощью параметра «Установить» в контекстном меню, вызываемом правой кнопкой мыши, но получаете выбранный INF-файл, который не поддерживает этот метод установки , вы должны выполнить следующие действия. статья для разрешения. INF-файл — это текстовый файл, разделенный на различные типы форматированных разделов. Каждый раздел предназначен для определенной цели; например, чтобы скопировать файлы или добавить записи в реестр. Файлы INF (файл информации установки) используются для установки драйверов. Однако, если что-то не так, вы можете получить такую ​​ошибку в Windows 10/8/7.

Выбранный вами INF-файл не поддерживает этот метод установки

  1. Повторно загрузите драйвер с официального сайта производителя.
  2. Проверьте, совместим ли драйвер с вашей архитектурой ОС
  3. Установить файл из диспетчера устройств

1] Повторно загрузите драйвер с официального сайта производителя .

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

Совет:

  • Утилита обновления драйверов Intel может помочь нам установить или обновить драйверы для Intel
  • Где скачать драйверы NVIDIA
  • Обновление драйверов AMD с помощью автоматического определения драйверов AMD
  • Загрузите драйверы Dell с помощью утилиты Dell Update.

2] Проверьте, совместим ли драйвер с вашей архитектурой ОС

Если у вас есть драйвер, совместимый с 32-разрядной системой, и вы пытаетесь установить его в 64-разрядной системе или наоборот, вы также можете получить это сообщение об ошибке. Это главное, что вы должны проверить перед загрузкой драйвера с сайта производителя. Чтобы проверить архитектуру вашей системы, вы можете открыть тип msinfo32 в Начальном поиске и нажать Enter, чтобы открыть окно Информация о системе . Найдите «системную информацию» в окне поиска Cortana и найдите строку с именем Тип системы .

3] Установите файл из диспетчера устройств

Если вам нужно обновить драйвер, и у вас есть файлы драйверов на вашем компьютере, вы можете следовать этому руководству, чтобы установить их из диспетчера устройств. Для этого откройте диспетчер устройств, щелкните правой кнопкой мыши драйвер, который вы хотите обновить, и выберите Обновить драйвер .

Затем нажмите Просмотреть мой компьютер для поиска драйверов .

После этого выберите параметр Разрешить мне выбирать из списка доступных драйверов на моем компьютере .

На следующем экране вы получите параметр с именем Иметь диск . Нажмите на него и нажмите кнопку Обзор , чтобы найти путь к файлу.

После этого INF-файл будет установлен без каких-либо сообщений об ошибках.

Надеюсь, что эти решения помогут вам.

Не устанавливаются драйвера при подключении устройства к ПК: ошибка INF-файла

Вопрос пользователя

Здравствуйте!

Нужно было скинуть фотографии с телефона на компьютер. Подключил я это устройство к ПК (компьютер его видит), и даже пытается установить драйвера, но безуспешно. Попробовал вручную запустить поиск драйверов через диспетчер устройств, пишет, что драйвера есть, но установить не может, так как: "Неправильная секция установки службы в этом INF-файле".

Помогите пожалуйста...

 

Доброго дня!

Относительно недавно восстанавливал работу одного ноутбука... При подключении к нему телефона ровным счетом ничего не происходило: Windows 10, установленная на нем, не находила драйвера и автоматически не устанавливала их.

Причем, вторая ОС Windows 7 - видела телефон в нормальном режиме и можно было обмениваться файлами. Было понятно, что дело в ОС, и спустя несколько минут - решение было найдено. Поделюсь им здесь, подразумеваю, что подобная проблема достаточно популярная...

 

Решение проблемы установки "дров" по шагам

1) Видимо ли ваше устройство? Работают ли кабели и порты?

Первое, с чего рекомендую начать - это определиться: "а видит ли ваше устройство ноутбук (компьютер)?". Возможно, что проблема с кабелем или USB-портом, и при подключении телефона - он просто "невидим", поэтому то и не устанавливаются драйвера.

Как это определить?

Очень просто. Обратите внимание, появляется ли зарядка батареи при подключении устройства к USB-порту ПК? Если появляется - то скорее всего с USB-кабелем и портом все в порядке. Кстати, обратите внимание на то, появляется ли характерный звук в Windows при подключения устройства.

Так же можно подключить этим кабелем к USB-порту другие устройства, либо подключить телефон к другому ПК. В общем, определиться, работает ли само оборудование...

 

2) Проверка диспетчера устройств - поиск неизвестного оборудования

И так, порты вроде бы рабочие, кабель тоже — следующий шаг: посмотреть, отображается ли оборудование в диспетчере устройств.

Чтобы открыть диспетчер устройств:

  1. Нажмите сочетание кнопок WIN+R;
  2. введите команду devmgmt.msc
  3. нажмите OK.
  4. способ работает во всех современных версиях Windows (прим.: в Windows 10, кстати, для открытия диспетчера устройств, можно вообще просто щелкнуть правой кнопкой мышки по меню ПУСК).

Как запустить диспетчер устройств

В диспетчере устройств раскройте вкладку "Другие устройства". Именно в ней должны отображаться все те устройства, которые компьютер (ноутбук) видит, но драйвера установить не может. На скриншоте ниже представлен как раз такой случай: телефон видим ПК, но драйвера Windows 10 установить в авто-режиме не может...

 

3) Как найти и установить нужный установить драйвер - попытка решения №1

Сначала рекомендую попробовать найти и установить именно тот драйвер, который рекомендуется для вашего оборудования, исходя из его ИД-свойств (у каждого оборудования свои идентификационные данные, благодаря чему можно искать драйвера, даже не зная точную марку устройства).

Чтобы посмотреть ИД-свойства, щелкните правой кнопкой мышки по неизвестному устройству (примечание: кстати, при отключении устройства от USB-порта - это неизвестное устройство должно пропадать из вкладки другие устройства), и перейти в его свойства.

Свойства неизвестного устройства

Далее нужно открыть вкладку "Сведения", в графе "Свойство" выбрать "ИД оборудования" и скопировать строку со значением (см. скриншот ниже).

Копируем ID устройства

Далее просто вставить скопированную строку в любой поисковик (Google, Яндекс) и найти драйвер для вашего устройства. Далее запустить его установку, и протестировать работу (во многих случаях, и делать то больше ничего не придется).

Более подробно о поиске драйвера для неизвестного устройства — https://ocomp.info/kak-nayti-i-ustanovit-drayver-dlya-neizvestnogo-ustroystva.html

 

4) Поиск и установка драйвера в авто-режиме Windows - попытка №2

Современные версии Windows (8, 10) могут автоматически находить и устанавливать драйвера для многих устройств, причем делают это весьма не плохо.

Чтобы проверить, получиться ли это: зайдите в диспетчер устройств, затем щелкните правой кнопкой мышки по нужному устройство (например, по неизвестному устройству), и во всплывшем контекстом меню - выберите "Обновить драйвера...".

Далее выберите автоматический вариант поиска и обновления (пункт первый, см. скрин ниже).

Автоматический поиск обновленных драйверов

Вообще, способ довольно хорош и выручает во многих случаях, но в моем - не сработал , через некоторое мгновение было сказано, что:

  • возникла проблема в процессе установки программного обеспечения для данного устройства
  • MPT DEVICE INF стороннего производителя не содержит информацию о подписи (см. скриншот ниже).

Возникла проблема в процессе установки программного обеспечения

 

5) Выбор драйвера из уже установленных - еще одно решение проблемы

Скажу одну крамольную вещь: вот некоторые ищут-ищут чудо драйвера, чтобы решить данную проблему, а проблемы, как таковой и нет. Драйвера, которые они ищут - уже давно есть на ихнем ПК, просто произошла ошибка в идентификации устройства и драйвера, и поэтому компьютер просто не воспринимает их. Нужно указать ему путь до них заново, и все заработает...

Поэтому, если предыдущие шаги не помогли, рекомендую открыть диспетчер устройств (как это делается- см. выше в статье), раскрыть вкладку "Другие устройства" (именно в ней показаны все устройств для которых нет "дров"), щелкнуть правой кнопкой мышки по нужному устройство и выбрать вариант "Обновить драйверы..." (как на скрине ниже).

Обновить драйверы...

Далее выбирайте "Выполнить поиск драйверов на этом компьютере".

как провести поиск драйвера

В следующем шаге папку с драйверами не указывайте, а нажмите по ссылке "Выбрать драйвер из списка уже установленных драйверов" (см. скрин ниже)

Выбрать драйвер из списка установленных

Далее нужно указать тип устройств из предложенного списка. В моем случае речь шла о телефоне, подключаемого к Usb-порту - т.е. о USB-устройстве. Именно это я и выбрал в списке.

Устройство USB

Далее Windows автоматически предлагает установить драйвера для MPT DEVICE - никаких галочек убирать не нужно, просто соглашаемся...

MPT устройства

Вуаля! Драйвера были успешно установлены. Заходу в проводник - телефон видим, отображается в "Этом компьютере", теперь на него можно загружать файлы, и с него скидывать фото (задача решена ).

Успешно установлено!

Примечание: если вместо сообщения об успешной установке - вы увидите ошибку (например, так же связанную с INF-файлом), нажмите кнопку "Назад", и попробуйте заново продолжить установку. Именно, этот способ и помог мне...

*

На сим статью завершаю, удачи!

👋

Полезный софт:

  • ВидеоМОНТАЖ

  • Отличное ПО для начала создания своих собственных видеороликов (все действия идут по шагам!).
    Видео сделает даже новичок!
  • Ускоритель компьютера

  • Программа для очистки Windows от мусора (ускоряет систему, удаляет мусор, оптимизирует реестр).

Другие записи:

Как обойти «INF стороннего производителя...» в Windows 8/8.1 и 10?

Пользователи наталкиваются на сообщение «INF стороннего производителя…» тогда, когда они пытаются установить драйвера стороннего производителя на свой компьютер.

Что такое «INF-файл»?

Для начала нам нужно понять, что такое INF-файл. INF-файл — это небольшой текстовый документ, идущий в паре непосредственно с самим драйвером. В этом текстовом файле содержатся инструкции по установке драйвера в операционную систему, а также цифровая подпись.

В прошлых версиях ОС Windows (семерка и ниже) в INF-файлах не было никаких подписей, так что пользователь мог свободно заниматься установкой любых драйверов, даже если это было опасно для системы. На данный момент системы Windows выполняют обязательную проверку цифровых подписей драйвера. Если с подписью все нормально — драйвер устанавливается, если нет — не устанавливается. В общем, довольно надежная предосторожность.

Как принудить установку драйвера и обойти ошибку?

К огромному счастью множества пользователей, Майкрософт внедрила в свою ОС несколько вариантов обхода функции проверки цифровых подписей драйверов. В этой статье мы покажем вам, как можно обойти проверку и спокойно установить в систему нужный драйвер.

Внимание:

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

Решение №1 Загрузка драйвера с сайта производителя

Для начала давайте попробуем принудительно установить нужный вам драйвер, загрузив его с сайта производителя и установив вручную. Например, пускай это будет драйвер для звуковой карты от Realtek. Как только на вашем компьютере будет находится драйвер подходящей версии, выполните следующие шаги для его установки в систему Windows:

  1. нажмите комбинацию Windows+R;
  2. пропишите значение «devmgmt.msc» и нажмите Enter;
  3. откройте раздел «Аудиовходы и аудиовыходы»;
  4. нажмите правой кнопкой мыши на вашу звуковую карту и выберите «Обновить драйвер»;
  5. выберите опцию «Выполнить поиск драйверов на этом компьютере»;
  6. укажите в соответствующей графе директорию к загруженному драйверу и нажмите кнопку «Далее»;
  7. следуйте инструкциям на экране для установки драйвера;
  8. перезагрузите компьютер.

Сообщение «INF стороннего производителя…» не должно проявиться во время установки драйвера.

Решение №2 Отключение проверки подписей через Командную строку

Как вариант, вы можете полностью отключить функцию проверки цифровых подписей драйверов в свой системе. Делать этого, разумеется, не рекомендуется, но если вы уверены в драйвере, то это можно сделать. Давайте попробуем отключить проверку через Командную строку:

  1. нажмите Windows+R;
  2. пропишите «cmd» и нажмите Ctrl+Shift+Enter;
  3. копируйте команду «bcdedit /set loadoptions DDISABLE_INTEGRITY_CHECKS & bcdedit /set testsigning on» и нажмите Enter;
  4. закройте Командную строку и перезагрузите компьютер.

После входа в систему попытайте установить необходимый драйвер.

Решение №3 Отключение проверки подписей через Параметры загрузки

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

  1. нажмите комбинацию Windows+I;
  2. откройте в раздел «Обновление и безопасность»;
  3. перейдите во вкладку «Восстановление»;
  4. нажмите на кнопку «Перезагрузить сейчас» в разделе «Особые варианты загрузки»;
  5. на экране выбора действий кликните на пункт «Диагностика», далее — «Дополнительные параметры»;
  6. на экране параметров загрузки кликните на кнопку «Перезапуск»;
  7. по входу в систему перед вами должен появиться список из нескольких опций — нажмите кнопку F7, чтобы отключить обязательную проверку подписи драйверов.

Оказавшись на рабочем столе, попытайтесь снова провести установку нужного вам драйвера. Сообщение «INF стороннего производителя…» не должно больше докучать вам.

Решение №4 Восстановление системных файлов

Возможно, проблема и вовсе не в проверке подписи драйверов. Есть шанс, что некоторые из системных файлов Windows были повреждены вследствие какого-то процесса, из-за чего проверка подписи драйвера прерывается или заканчивается ошибкой. Не помешает запустить в работу SFC и DISM:

  1. нажмите Windows+R;
  2. впишите значение «cmd» и нажмите Ctrl+Shift+Enter;
  3. поочередно вводите следующие команды, перезагружаясь каждый раз после их выполнения:
    • sfc /scannow;
    • DISM /Online /Cleanup-Image /RestoreHealth.

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

Как установить inf файл в windows 10

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

Что такое драйвер

Драйвер - низкоуровневая системная программа, предоставляющая пользователю возможность взаимодействовать с оборудованием ПК посредством программ и операционной системы. Драйвер для звука управляет работой звуковой карты, видеоадаптера – позволяет обрабатывать и выводить на дисплей изображение. Благодаря этому мы работает с мультимедиа контентом.
Установить драйвера на windows 7 для большинства устройств не потребуется – они содержатся в образе ОС. Но при использовании новейших или, наоборот, устаревших аппаратных компонентов, в установочном дистрибутиве может не содержаться нужной программы для управления работой такого оборудования. Если драйвер для флешки, монитора и чипсета установится автоматически, то со звуковыми устройствами и видеокартами возникают проблемы. Системные программы для них приходится скачивать и устанавливать отдельно. Делается это по нескольким причинам:

  • ввиду значительного разнообразия моделей тех же видеоадаптеров добавление архивов с системным ПО для каждой из них увеличат размер образа ОС в несколько раз;
  • в дистрибутив Windows входит набор приложений для обеспечения базовой функциональности (драйвера для usb, чипсета, сетевой карты и прочих системных девайсов).

Как установить драйвера вручную

Сразу после инсталляции операционной системы рекомендуется выполнить установку драйверов неизвестных устройств и обновить уже инсталлированные.

В первую очередь обновление касается графического адаптера и устройств, работающих в нештатном режиме (глюки, ошибки). Драйвер usb для windows 7 устанавливается по умолчанию, но его лучше обновить: бывают случаи, когда USB 3.2 функционируют в режиме USB 2.0 из-за устаревших программных компонентов, обеспечивающих их работу.
Установка драйверов для конкретного девайса заключается в следующем: поиск, скачивание, запуск инсталлятора и следование его подсказкам. Использовать входящие в комплект поставки компьютера или ноутбука диски крайне не рекомендуется – на них расположены устаревшие версии системных программ.
Дабы для девайса установить драйвер вручную (рассмотрим на примере звуковой платы), необходимо знать модель устройства.

  • Заходим в диспетчер задач (вызывается командой «devmgmt.msc» введенной в поисковую строку Пуска).
  • Находим требуемое устройство (ориентируйтесь по названию, категории, которой оно принадлежит, или по желтой иконке возле наименования).
  • Вызываем его «Свойства», если девайс не определился (так мы сможем узнать какой звуковой драйвер нужен).

Когда необходимо обновить программу определенного оборудования – заходим на официальный сайт разработчика и загружаем программное обеспечение.

Рис 1. Установка драйверов через диспетчер устройств
  • Переходим во вкладку «Сведения».
  • В поле «Свойство» выбираем «ИД оборудования».
  • Затем во фрейме «Значение» выбираем первый пункт и копируем его содержимое в буфер.
Рис 2. Поиск нужного драйвера
  • Переходим на сайт devid.info и вставляем в поисковую строку ключевую часть скопированного кода: «VID_058F».

В поиск копируем фрагмент, начинающийся со слов DEV, VEN, VID, содержащие в себе код устройства.

Рис 3. Вводим в поисковую строку
  • Жмем «Искать», загружаем предложенный файл и запускаем его, чтобы обновить звуковые драйвера для windows 7.

Как установить драйвер, на примере видеокарты

  1. Когда требуется установить драйвера на видеокарту переходим на официальный сайт производителя (на примере nVidia) по ссылке http://www.nvidia.ru/Download/index.aspx?lang=ru.
  2. Задаем параметры поиска вручную, выбрав используемую редакцию Windows и серию видеоадаптера.
  3. Жмем «Поиск», затем «Загрузить сейчас».
  4. По окончанию скачивания запускаем исполняемый файл и выполняем предложенные действия.

В строке «Серия продуктов» отсутствует ваше устройство? Заходим в архив драйверов nvidia (как на скриншоте) и там запускаем процесс поиска.

Рис 4. Выбираем драйвера для видеокарты

Автоматическая установка

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

Однажды загруженный дистрибутив SDI с полной базой системных программ позволит обновить бесплатно драйвера для Windows 7 на ноутбуке или компьютере в один клик. Утилита является следующим шагом в развитии DriverPack Solution со следующими особенностями:

  • код написан на C/C++;
  • учитывается гораздо большее количество факторов при ранжировании;
  • отказ от JavaScript повысил быстродействие (запуск осуществляется менее чем за секунду) даже на слабых ПК;
  • предоставляет подробные данные об устройствах;
  • позволяет обновить драйвера на Windows XP – Windows 10;
  • в набор не включены программы (DirectX, Flash, Visual C++).

Программа поиска и установки драйверов работает по следующему алгоритму.

  • Запускаем исполняемый файл (SDI_x64_R423 для 64-хбитной Windows, SDI_R423 – для 32-хбитных Windows).

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

В левом фрейме выбираем язык приложения и желаемую тему оформления. После перехода в «Режим эксперта» откроется меню с расширенными возможностями по выбору драйверпаков для установки. Рядовому пользователя эту опцию лучше не активировать.

  • Отмечаем флажками те драйвера установить автоматически которые необходимо.
Рис 5. Окно программы для установки драйверов
  • Обязательно отметьте «Создать точку восстановления системы», чтобы в непредвиденной ситуации откатить состояние Windows.
  • Кликаем «Установить» и дожидаемся завершения инсталляции.

Установка из файла INF - приложения Win32

  • 2 минуты на чтение

В этой статье

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

Также есть функции для обработки сжатых файлов. Функция SetupGetFileCompressionInfo возвращает информацию о сжатых файлах. Затем эта информация может использоваться программой SetupDecompressOrCopyFile для копирования и, при необходимости, расширения файла.

Функции высокого уровня, такие как SetupInstallFromInfSection , SetupInstallFilesFromInfSection и SetupInstallServicesFromInfSection , обрабатывают операции установки в разделе Install или Service .Из них SetupInstallFromInfSection является наиболее универсальным, поскольку он может выполнять любые операции установки, перечисленные в разделе Install INF-файла. Сюда входят операции реестра и INI, перечисленные в строках AddReg , DelReg , UpdateInis или UpdateIniField раздела Install .

SetupInstallFilesFromInfSection и SetupInstallServicesFromInfSection помещают операции в очередь из раздела Install или Service , соответственно, в существующую файловую очередь.Обратите внимание, что вы должны вызывать SetupInstallFromInfSection и SetupInstallServicesFromInfSection отдельно для операций и служб очереди. Для получения дополнительной информации см. Файловые очереди.

Напротив, функция SetupInstallFromInfSection создает и уничтожает собственную внутреннюю очередь. Обычно SetupInstallFromInfSection вызывает его после того, как все файлы были успешно скопированы для выполнения транзакций реестра и INI.

В Windows 2000 файлы DLL можно зарегистрировать самостоятельно, вызвав SetupInstallFromInfSection для INF-файла, который включает в себя директиву RegisterDlls в разделе Install . SetupInstallFromInfSection также может самостоятельно регистрировать 32-разрядные библиотеки DLL из 64-разрядного процесса.

В 64-разрядных операционных системах можно вызвать SetupInstallFromInfSection для выполнения операций с 32-разрядной частью реестра. Чтобы добавить раздел реестра в 32-битную часть реестра, включите флаг FLG_ADDREG_32BITKEY в строку AddReg INF. Чтобы удалить раздел реестра только в 32-битной части реестра, включите ключ FLG_DELREG_32BITKEY в строку DelReg .Чтобы установить или очистить двоичное значение только в 32-битной части реестра, включите FLG_BITREG_32BITKEY в строку BitReg .

В дополнение к ранее перечисленным функциям, Setup API включает функции, которые ставят в очередь операции установки файлов, либо по файлам, либо по разделам INF. Для получения дополнительной информации см. Файловые очереди.

.

Обзор файлов INF - драйверы для Windows

  • 2 минуты на чтение

В этой статье

Windows использует файлы установочной информации (INF) для установки следующих компонентов на устройство:

INF-файл - это текстовый файл, содержащий всю информацию, которую компоненты установки устройства использовали для установки драйвера.Windows устанавливает драйверы с помощью файлов INF. Эта информация включает следующее:

  • Имя и расположение драйвера
  • Информация о версии драйвера
  • Информация реестра

Вы можете использовать файл INX для автоматического создания файла INF. Файл INX - это файл INF, содержащий строковые переменные, представляющие информацию о версии. Утилита сборки и инструмент Stampinf заменяют строковые переменные в файлах INX текстовыми строками, которые представляют конкретную аппаратную архитектуру или версию платформы.Для получения дополнительной информации о файлах INX см. Использование файлов INX для создания файлов INF.

Полное описание формата файла INF см. В разделах файла INF и Директиве файла INF.

.

Использование компонента INF-файла - драйверы Windows

  • 4 минуты на чтение

В этой статье

Если вы хотите включить программное обеспечение пользовательского режима для использования с устройством в Windows 10, у вас есть следующие возможности для создания DCH-совместимого драйвера:

Дополнительное программное обеспечение
Метод Сценарий
Приложения поддержки оборудования (HSA) Дополнительное программное обеспечение для устройства, упакованное как приложение UWP, которое доставляется и обслуживается из Microsoft Store.Рекомендуемый подход.
Программные компоненты Device - это двоичный файл MSI или EXE, служба Win32 или программное обеспечение, установленное с помощью AddReg и CopyFiles. Указанный двоичный файл работает только в настольных версиях (Home, Pro и Enterprise). Указанный двоичный файл не будет работать в Windows 10S.

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

На этой странице представлены инструкции по использованию программных компонентов.

Начало работы

Для создания компонентов файл расширения INF определяет директиву INF AddComponent один или несколько раз в разделе INF DDInstall.Components. Для каждого программного компонента, указанного в файле расширения INF, система создает виртуальное дочернее устройство с программной нумерацией. Более чем один пакет драйверов может ссылаться на один и тот же программный компонент.

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

Вы предоставите файл INF для каждого программного компонента.

Если ваш программный компонент INF определяет директиву AddSoftware , компонент INF:

Директиву AddSoftware можно указать один или несколько раз.

Примечание

При использовании типа 2 директивы AddSoftware не требуется использовать Component INF.Директива может успешно использоваться в любом INF. Однако директива AddSoftware типа 1 должна использоваться из Component INF.

Кроме того, любой INF (компонент или нет) соответствует на устройстве компонента программного обеспечения:

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

Примечание : для функционирования компонентного устройства с программной нумерацией необходимо запустить его родительский элемент. Если драйвер для родительского устройства недоступен, разработчики драйверов могут создать свой собственный и при необходимости использовать сквозной драйвер umpass.sys ". Этот драйвер включен в Windows и, по сути, не делает ничего, кроме запуска устройства. Чтобы использовать umpass.sys, разработчики должны использовать директивы Include / Needs INF в разделе DDInstall для каждого возможного [DDInstall. *] в соответствующие разделы [UmPass. *], как показано ниже, независимо от того, указаны ли в INF какие-либо директивы для этого раздела или нет:

  [DDInstall] Включить = umpass.inf Потребности = UmPass ; также включить любые существующие директивы DDInstall [DDInstall.HW] Включить = umpass.inf Потребности = UmPass.HW ; также включить любые существующие директивы DDInstall.HW [DDInstall.Interfaces] Включить = umpass.inf Потребности = UmPass.Interfaces ; также включить любые существующие директивы DDInstall.Interfaces [DDInstall.Services] Включить = umpass.inf Потребности = UmPass.Services ; также включать любые существующие директивы DDInstall.Services  

Доступ к устройству из программного компонента

Чтобы получить идентификатор экземпляра устройства, связанного с программным компонентом, используйте значение SoftwareArguments в разделе директив INF AddSoftware с переменной контекста времени выполнения <> .

Исполняемый файл затем может получить идентификатор экземпляра устройства программного компонента из своего списка входящих аргументов.

Затем, если программный компонент нацелен на универсальную целевую платформу, используйте следующую процедуру:

  1. Вызов CM_Locate_DevNode с идентификатором экземпляра устройства программного компонента, чтобы получить дескриптор устройства.
  2. Вызовите CM_Get_Parent , чтобы получить дескриптор родительского устройства. Этот родительский элемент является устройством, добавившим программный компонент с помощью директивы INF AddComponent.
  3. Затем, чтобы получить идентификатор экземпляра устройства родительского устройства, вызовите CM_Get_Device_ID на дескрипторе из CM_Get_Parent .

Если программный компонент нацелен только на целевую платформу Desktop, используйте следующую процедуру:

  1. Вызовите SetupDiCreateDeviceInfoList , чтобы создать пустой набор информации об устройстве.
  2. Позвоните по номеру SetupDiOpenDeviceInfo и сообщите идентификатор экземпляра устройства программного компонента.
  3. Вызовите SetupDiGetDeviceProperty с DEVPKEY_Device_Parent , чтобы получить идентификатор экземпляра устройства родительского устройства.

Пример

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

Пакет драйверов INF-файл

  [Версия] Подпись = "$ WINDOWS NT $" Класс = Расширение ClassGuid = {e2f84ce7-8efa-411c-aa69-97454ca4cb57} ExtensionId = {zzzzzzzz-zzzz-zzzz-zzzz-zzzzzzzzzzzz}; замените своим собственным GUID Провайдер =% CONTOSO% DriverVer = 21.06.2006, 1.0.0.0 CatalogFile = ContosoGrfx.кошка [Производитель] % CONTOSO% = Contoso, NTx86 [Contoso.NTx86] % ContosoGrfx.DeviceDesc% = ContosoGrfx, PCI \ VEN0001 и DEV0001 [ContosoGrfx.NT] ; пустой [ContosoGrfx.NT.Components] AddComponent = ContosoControlPanel ,, Component_Inst [Component_Inst] ComponentIDs = VID0001 & PID0001 & SID0001 [Строки] CONTOSO = "Contoso Inc." ContosoGrfx.DeviceDesc = "Расширение видеокарты Contoso"  

INF-файл программного компонента

  [Версия] Подпись = "$ WINDOWS NT $" Класс = SoftwareComponent ClassGuid = {5c4c3332-344d-483c-8739-259e934c9cc8} Провайдер =% CONTOSO% DriverVer = 21.06.2006,1.0,0.0 CatalogFile = ContosoCtrlPnl.cat [SourceDisksNames] 1 =% Диск% ,,, "" [SourceDisksFiles] ContosoCtrlPnl.exe = 1 [DestinationDirs] DefaultDestDir = 13 [Производитель] % CONTOSO% = Contoso, NTx86 [Contoso.NTx86] % ContosoCtrlPnl.DeviceDesc% = ContosoCtrlPnl, SWC \ VID0001 и PID0001 и SID0001 [ContosoCtrlPnl.NT] CopyFiles = ContosoCtrlPnl.NT.Copy [ContosoCtrlPnl.NT.Copy] ContosoCtrlPnl.exe [ContosoCtrlPNl.NT.Services] AddService =,% SPSVCINST_ASSOCSERVICE% [ContosoCtrlPnl.NT.Software] AddSoftware = ContosoGrfx1CtrlPnl ,, Software_Inst [Software_Inst] SoftwareType = 1 SoftwareBinary =% 13% \ ContosoCtrlPnl.исполняемый SoftwareArguments = <> SoftwareVersion = 1.0.0.0 [Строки] SPSVCINST_ASSOCSERVICE = 0x00000002 CONTOSO = "Contoso" ContosoCtrlPnl.DeviceDesc = "Панель управления Contoso"  

Процесс проверки и отправки драйвера для компонентов INF такой же, как и для обычных INF. Дополнительные сведения см. В разделе «Начало работы с Windows HLK».

Дополнительные сведения о классах настройки см. В разделе Классы настройки устройств, определяемые системой, доступные для поставщиков.

См. Также

Директива INF AddComponent

INF Директива AddSoftware

INF DDInstall.Компоненты Раздел

INF DDInstall.Software Раздел

.

Использование универсального файла INF - драйверы Windows

  • 2 минуты на чтение

В этой статье

Если вы создаете пакет драйверов Windows, вы должны использовать универсальный файл INF. Если вы создаете пакет драйвера рабочего стола Windows, вам не обязательно использовать универсальный файл INF, но это рекомендуется из-за повышения производительности.

Универсальный файл INF использует подмножество синтаксиса INF, доступного для драйвера Windows. Универсальный файл INF устанавливает драйвер и настраивает оборудование устройства, но не выполняет никаких других действий, таких как запуск совместной программы установки.

Почему универсальный INF-файл требуется в нерабочих версиях Windows?

В некоторых выпусках Windows, например Windows 10X, используется только часть методов установки драйверов, доступных на рабочем столе Windows 10. Файл INF для версий Windows, отличных от настольных, должен выполнять только дополнительные операции, которые не зависят от поведения системы во время выполнения.Файл INF с таким ограниченным синтаксисом называется универсальным файлом INF.

Универсальный файл INF устанавливается предсказуемо, каждый раз с одним и тем же результатом. Результаты установки не зависят от поведения системы во время выполнения. Например, ссылки на совместный установщик недопустимы в универсальном файле INF, поскольку код в дополнительной DLL не может быть выполнен в автономной системе.

В результате пакет драйверов с универсальным файлом INF можно настроить заранее и добавить в автономную систему.

Вы можете использовать инструмент InfVerif, чтобы проверить, является ли файл INF вашего драйвера универсальным.

Какие разделы INF недопустимы в универсальном файле INF?

Вы можете использовать любой раздел INF в универсальном файле INF, кроме следующего:

Раздел производителя INF действителен до тех пор, пока украшение TargetOSVersion не содержит флаг ProductType или флаг SuiteMask .

Раздел INF DefaultInstall действителен только в том случае, если он имеет архитектурное оформление, например [DefaultInstall.NTAMD64] .

Какие директивы INF недопустимы в универсальном файле INF?

Вы можете использовать любую директиву INF в универсальном файле INF, кроме следующих:

Следующие директивы действительны с некоторыми оговорками:

  • Директива INF AddReg действительна, если записи в указанном разделе add-registry- имеют значение reg-root , равное HKR , или в следующих случаях:

    • Для регистрации объектов модели компонентных объектов (COM) ключ может быть записан под:
      • HKCR
      • HKLM \ SOFTWARE \ Классы
    • Для создания Hardware Media Foundation Transforms (MFT) ключ может быть записан под:
      • HKLM \ SOFTWARE \ Microsoft \ Windows Media Foundation
      • HKLM \ SOFTWARE \ WOW6432Node \ Microsoft \ Windows Media Foundation
      • HKLM \ SOFTWARE \ WOW3232Node \ Microsoft \ Windows Media Foundation
  • Директива INF CopyFiles действительна только в том случае, если целевой каталог является одним из следующих:

    • 11 (соответствует% WINDIR% \ System32)
    • 12 (соответствует% WINDIR% \ System32 \ Drivers)
    • 13 (соответствует каталогу в% WINDIR% \ System32 \ DriverStore \ FileRepository, где хранится драйвер)
      Примечание: CopyFiles нельзя использовать для переименования файла, для которого DestinationDirs включает dirid 13.Кроме того, dirid 13 действителен только в продуктах Windows 10 для ограниченного набора сценариев установки устройств. Пожалуйста, обратитесь к руководству и образцам для вашего конкретного класса устройств для получения более подробной информации.
    • 10, SysWOW64 (соответствует% WINDIR% \ SysWOW64)
    • 10, , зависящее от поставщика имя подкаталога
      Примечание: В Windows 10 версии 1709 использование dirid 10 с зависящим от поставщика именем подкаталога допустимо в универсальном INF, измеренном с помощью инструмента InfVerif.В более поздних выпусках это значение может не поддерживаться. Рекомендуем перейти на dirid 13.

См. Также

.

Использование INF-файла расширения - Драйверы для Windows

  • 8 минут на чтение

В этой статье

До Windows 10 Windows выбирала один пакет драйверов для установки для данного устройства. Это привело к созданию больших и сложных пакетов драйверов, которые включали код для всех сценариев и конфигураций, и каждое незначительное обновление требовало обновления всего пакета драйверов.Начиная с Windows 10, вы можете разделить функциональность INF на несколько компонентов, каждый из которых может обслуживаться независимо.

Чтобы расширить функциональные возможности файла INF пакета драйвера, предоставьте расширение INF в отдельном пакете драйвера. Расширение INF:

  • Может предоставляться другой компанией и обновляться независимо от базового INF.
  • Выглядит так же, как базовый INF, но может расширять базовый INF для настройки или специализации.
  • Увеличивает ценность устройства, но не является необходимым для работы базового драйвера.
  • Должен быть универсальным файлом INF.

Каждое устройство должно иметь один базовый INF и, при желании, может иметь один или несколько связанных с ним расширений INF.

Типичные сценарии, в которых вы можете использовать расширение INF, включают:

  • Изменение настроек, содержащихся в базовом INF, например настройка понятного имени устройства или изменение параметра конфигурации оборудования.
  • Создание одного или нескольких программных компонентов путем указания директивы INF AddComponent и предоставления файла INF компонента.

Примеры кода для этих сценариев приведены в приведенных ниже примерах. См. Также пример пакета DCH-совместимого драйвера, в котором описывается, как в образце универсального драйвера DCHU используются файлы INF расширений.

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

Как расширенный INF и базовый INF работают вместе

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

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

Указание ExtensionId

Когда вы пишете расширение INF, вы генерируете специальный GUID, называемый ExtensionId , который является записью в разделе [Версия] файла INF.

Система определяет возможные расширения INF для конкретного устройства путем сопоставления идентификатора оборудования и совместимых идентификаторов устройства с теми, которые указаны в расширении INF в разделе Models , который применяется к этой системе.

Среди всех возможных расширений INF, которые задают одно и то же значение ExtensionId , система выбирает только один для установки и применяет его настройки к настройкам базового INF.Дата драйвера и версия драйвера, указанные в INF, используются в указанном порядке для выбора одного INF из нескольких расширений INF с одинаковым ExtensionId .

Для иллюстрации рассмотрим следующий сценарий, который включает в себя гипотетическое устройство, для которого существует три расширения INF:

Значения ExtensionId {A} , {B} и {C} показаны в фигурных скобках, а ранг каждого драйвера показан на баннерных лентах.

Сначала система выбирает драйвер с самой последней версией и наивысшим рангом.

Затем система обрабатывает доступные расширения INF. Два имеют ExtensionId , значение {B} , а один имеет ExtensionId , значение {A} . Из первых двух предположим, что дата водителя такая же. Следующим параметром разрешения конфликтов является версия драйвера, поэтому система выбирает расширение INF с v2.0.

Также выбирается расширение INF с уникальным значением ExtensionId .Система применяет базовый INF для устройства, а затем применяет два расширенных INF для этого устройства.

Обратите внимание, что файлы INF расширения всегда применяются после базового INF, но не существует определенного порядка, в котором применяются файлы INF расширения.

Создание расширения INF

Вот записи, необходимые для определения INF как расширения INF.

  1. Укажите эти значения для Class и ClassGuid в разделе Version .Дополнительные сведения о классах настройки см. В разделе Классы настройки устройств, определяемые системой, доступные для поставщиков.

      [Версия] ... Класс = Расширение ClassGuid = {e2f84ce7-8efa-411c-aa69-97454ca4cb57}  
  2. Укажите запись ExtensionId в разделе [Версия] . Создайте новый GUID для начальной версии расширения INF или повторно используйте последний GUID для последующих обновлений исходного расширения INF.

      ExtensionId = {zzzzzzzz-zzzz-zzzz-zzzz-zzzzzzzzzzzz}; замените своим собственным GUID  

Обратите внимание, что организация может использовать только принадлежащий ей ExtensionID .Для получения информации о регистрации идентификатора расширения см. Раздел Управление отправкой оборудования на панели инструментов Центра разработки оборудования Windows.

  1. Если вы обновляете расширение INF, сохраните ExtensionId и увеличивайте версию или дату (или обе), указанные в директиве DriverVer . Для данного значения ExtensionId PnP выбирает INF с наибольшим DriverVer .
  1. В разделе INF Models укажите один или несколько аппаратных и совместимых идентификаторов, которые соответствуют идентификаторам целевого устройства.Обратите внимание, что эти аппаратные и совместимые идентификаторы не обязательно должны совпадать с идентификаторами базового INF. Обычно в расширении INF указывается более конкретный идентификатор оборудования, чем в базовом INF, с целью дальнейшей специализации конкретной конфигурации драйвера. Например, базовый INF может использовать идентификатор оборудования PCI, состоящий из двух частей, в то время как расширение INF определяет идентификатор оборудования PCI, состоящий из четырех частей, например:

      [DeviceExtensions.NTamd64] % Device.ExtensionDesc% = DeviceExtension_Install, PCI \ VEN_XXXX & DEV_XXXX & SUBSYS_XXXXXXXX & REV_XXXX  

    В качестве альтернативы, в расширении INF может быть указан тот же идентификатор оборудования, что и в базовом INF, например, если устройство уже очень узко нацелено, или если в базовом INF уже указан наиболее конкретный идентификатор оборудования.

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

    Таргетинг CHID может использоваться, если четырехчастный идентификатор оборудования невозможен или недостаточно ограничен.

  2. Не определяйте службу с помощью SPSVCINST_ASSOCSERVICE . Однако расширение INF может определять другие службы, например драйвер фильтра для устройства. Дополнительные сведения об указании служб см. В INF AddService Directive .

В большинстве случаев вы отправляете пакет INF расширения в Центр разработки оборудования отдельно от базового пакета драйверов. Примеры упаковки INF-файлов расширений, а также ссылки на примеры кода см. В разделе Пример пакета драйвера, совместимого с DCH.

Процесс проверки и отправки драйвера для расширений INF такой же, как и для обычных INF. Дополнительные сведения см. В разделе «Начало работы с Windows HLK».

Удаление драйвера расширения

Чтобы удалить драйвер расширения, используйте команду PnPUtil delete с флагом uninstall .

Чтобы удалить пакет драйверов, используйте pnputil / delete-driver / uninstall oem0.inf . Чтобы принудительно удалить пакет драйверов, используйте pnputil / delete-driver / uninstall oem1.inf / force .

Это позволяет удалить драйвер расширения без удаления базового драйвера.

Пример 1: Использование расширения INF для установки понятного имени устройства

В одном распространенном сценарии производитель устройства (IHV) предоставляет базовый драйвер и базовый INF, а затем сборщик системы (OEM) предоставляет расширение INF, которое дополняет, а в некоторых случаях отменяет конфигурацию и настройки базового INF.Следующий фрагмент представляет собой полное расширение INF, показывающее, как установить понятное имя устройства.

  [Версия] Подпись = "$ WINDOWS NT $" Класс = Расширение ClassGuid = {e2f84ce7-8efa-411c-aa69-97454ca4cb57} Провайдер =% CONTOSO% ExtensionId = {zzzzzzzz-zzzz-zzzz-zzzz-zzzzzzzzzzzz}; замените своим собственным GUID DriverVer = 28.05.2013,1.0.0.0 CatalogFile = delta.cat [Производитель] % CONTOSO% = DeviceExtensions, NTamd64 [DeviceExtensions.NTamd64] % Device.ExtensionDesc% = DeviceExtension_Install, PCI \ VEN_XXXX & DEV_XXXX & SUBSYS_XXXXXXXX & REV_XXXX [DeviceExtension_Install] ; Без изменений [DeviceExtension_Install.HW] AddReg = FriendlyName_AddReg [FriendlyName_AddReg] HKR ,, FriendlyName ,, "Новое понятное имя устройства" [Строки] CONTOSO = "Contoso" Device.ExtensionDesc = "Пример расширения устройства"  

Пример 2: Использование расширения INF для установки дополнительного программного обеспечения

Следующий фрагмент кода представляет собой полное расширение INF, включенное в набор инструментов для установки пакета драйверов для универсальных драйверов. В этом примере директива INF AddComponent используется для создания компонентов, устанавливающих службу и исполняемый файл.Для получения дополнительной информации о том, что вы можете делать в компоненте INF, см. Использование файла INF компонента.

Чтобы получить доступ к этому файлу в Интернете, см. osrfx2_DCHU_extension.inx .

 ; / * ++ ; ; Авторское право (c) Microsoft Corporation. Все права защищены. ; ; ДАННЫЙ КОД И ИНФОРМАЦИЯ ПРЕДОСТАВЛЯЮТСЯ «КАК ЕСТЬ», БЕЗ ГАРАНТИЙ. ; ВИД, ЯВНО ЯВНО ПОДРАЗУМЕВАЕМЫЙ, ВКЛЮЧАЯ, НО НЕ ОГРАНИЧЕННЫЙ ; ПОДРАЗУМЕВАЕМЫЕ ГАРАНТИИ КОММЕРЧЕСКОЙ ЦЕННОСТИ И / ИЛИ ПРИГОДНОСТИ ДЛЯ ОПРЕДЕЛЕННОГО ; ЦЕЛЬ. ; ; Название модуля: ; ; osrfx2_DCHU_extension.INF ; ;Аннотация: ; ; Дополнительная информация для OSR FX2 Learning Kit ; ; - * / [Версия] Подпись = "$ WINDOWS NT $" Класс = Расширение ClassGuid = {e2f84ce7-8efa-411c-aa69-97454ca4cb57} Provider =% ManufacturerName% ExtensionId = {3846ad8c-dd27-433d-ab89-453654cd542a} CatalogFile = osrfx2_DCHU_extension.cat DriverVer = 16.05.2017,15.14.36.721 [Производитель] % ManufacturerName% = OsrFx2Extension, NT $ ARCH $ [OsrFx2Extension.NT $ ARCH $] % OsrFx2.ExtensionDesc% = OsrFx2Extension_Install, USB \ Vid_045e & Pid_94aa & mi_00 % OsrFx2.ExtensionDesc% = OsrFx2Extension_Install, USB \ Vid_0547 и PID_1002 [OsrFx2Extension_Install.NT] CopyInf = osrfx2_DCHU_usersvc.inf [OsrFx2Extension_Install.NT.HW] AddReg = OsrFx2Extension_AddReg AddReg = OsrFx2Extension_COMAddReg [OsrFx2Extension_AddReg] HKR, OSR, «OperatingParams», «-Extended» HKR, OSR, «OperatingExceptions», «x86» ; Добавьте все ключи реестра, чтобы успешно зарегистрировать ; Внутрипроцессный пример MSFT COM-сервера ATL. [OsrFx2Extension_COMAddReg] HKCR, AppID \ ATLDllCOMServer.DLL, AppID ,, "{9DD18FED-55F6-4741-AF25-798B90C4AED5}" HKCR, AppID \ {9DD18FED-55F6-4741-AF25-798B90C4AED5} ,,, "ATLDllCOMServer" HKCR, ATLDllCOMServer.SimpleObject ,,, "Класс SimpleObject" HKCR, ATLDllCOMServer.SimpleObject \ CLSID ,,, "{92FCF37F-F6C7-4F8A-AA09-1A14BA118084}" HKCR, ATLDllCOMServer.SimpleObject \ CurVer ,,, "ATLDllCOMServer.SimpleObject.1" HKCR, ATLDllCOMServer.SimpleObject.1 ,,, «Класс SimpleObject» HKCR, ATLDllCOMServer.SimpleObject.1 \ CLSID ,,, "{92FCF37F-F6C7-4F8A-AA09-1A14BA118084}" HKCR, CLSID \ {92FCF37F-F6C7-4F8A-AA09-1A14BA118084} ,,, "Класс SimpleObject" HKCR, CLSID \ {92FCF37F-F6C7-4F8A-AA09-1A14BA118084} \ InprocServer32 ,,% REG_EXPAND_SZ%, "%% SystemRoot %% \ System32 \ ATLDllCOMServer.dll " HKCR, CLSID \ {92FCF37F-F6C7-4F8A-AA09-1A14BA118084} \ InprocServer32, ThreadingModel ,, "Квартира" HKCR, CLSID \ {92FCF37F-F6C7-4F8A-AA09-1A14BA118084} \ ProgID ,,, "ATLDllCOMServer.SimpleObject.1" HKCR, CLSID \ {92FCF37F-F6C7-4F8A-AA09-1A14BA118084} \ Programmable ,,% FLG_ADDREG_KEYONLY% HKCR, CLSID \ {92FCF37F-F6C7-4F8A-AA09-1A14BA118084} \ TypeLib ,,, "{9B23EFED-A0C1-46B6-A903-218206447F3E}" HKCR, CLSID \ {92FCF37F-F6C7-4F8A-AA09-1A14BA118084} \ VersionIndependentProgID ,,, "ATLDllCOMServer.SimpleObject" [OsrFx2Extension_Install.NT.Components] AddComponent = osrfx2_DCHU_component ,, OsrFx2Extension_ComponentInstall AddComponent = osrfx2_DCHU_usersvc ,, OsrFx2Extension_ComponentInstall_UserSvc [OsrFx2Extension_ComponentInstall] ComponentIds = VID_045e и PID_94ab [OsrFx2Extension_ComponentInstall_UserSvc] ComponentIds = VID_045e и PID_94ac [Строки] ManufacturerName = "Contoso" OsrFx2.ExtensionDesc = "Расширение устройства OsrFx2 DCHU" REG_EXPAND_SZ = 0x00020000 FLG_ADDREG_KEYONLY = 0x00000010  

Для получения информации о том, как использовать расширение INF для установки драйвера фильтра, см. Заказ драйвера фильтра устройств.

Чтобы улучшить расширяемость, мы рекомендуем, чтобы IHV поместил дополнительные функции в шаблон расширения INF.

Обратная совместимость

Любое изменение базового INF необходимо тщательно протестировать, чтобы убедиться, что оно не нарушает обратную совместимость для существующих расширений INF.

При управлении базовым INF придерживайтесь следующих рекомендаций:

  • Задокументируйте диапазоны значений параметров и ограничения как в комментариях к коду, так и в проектном документе. Будущие изменения должны соответствовать указанным диапазонам.
  • Для поддержки новых диапазонов добавьте необязательный параметр (без значения по умолчанию).

Если IHV помещает все функции в базовый INF, вот один из способов гарантировать, что существующие расширения INF продолжают работать:

  1. IHV предоставляет сопутствующее приложение, которое по умолчанию устанавливает флаг реестра для отключения дополнительных функций.
  2. Базовый драйвер проверяет, включен ли флаг перед использованием дополнительных функций.
  3. Расширение INF, поставляемое изготовителем оборудования, может принять участие, установив флаг включения.

Подача расширенного INF для сертификации

Для получения подробной информации о том, как работать с расширениями INF в Центре разработки оборудования, см. Работа с расширениями INF на панели инструментов Центра разработки оборудования Windows.

.

Общие правила синтаксиса для файлов INF - драйверы Windows

  • 7 минут на чтение

В этой статье

INF-файл - это текстовый файл, организованный в именованные разделы. Некоторые разделы имеют имена, определенные системой, а некоторые разделы имеют имена, определенные автором файла INF.

Каждый раздел содержит специфические для раздела записи, которые интерпретируются компонентами установки устройства (установщики классов, совместные установщики, SetupAPI).Некоторые записи начинаются с заранее определенного ключевого слова. Эти записи называются директивами .

Некоторые записи файла INF являются в основном указателями из одного раздела в другой для определенной цели. Например, директива INF AddReg определяет раздел, содержащий записи, которые инструктируют Windows изменить реестр. Эти записи иногда включают дополнительные аргументы (обязательные или необязательные) для интерпретации Windows во время установки.

Другие записи файла INF не указывают на другие разделы, но предоставляют информацию, которую Windows использует во время установки, например имена файлов, значения реестра, информацию о конфигурации оборудования, флаги и т. Д.Например, директива INF DriverVer предоставляет информацию о версии драйвера.

Когда Windows начинает установку, она сначала ищет раздел INF Version , чтобы проверить действительность INF-файла и определить, где находятся установочные файлы. Затем он начинает установку, находя INF Manufacturer section . Этот раздел содержит директивы к разделам INF Model , которые, в свою очередь, содержат директивы, ведущие к различным разделам INF DDInstall INF DDInstall на основе идентификатора оборудования устанавливаемого устройства.

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

Чувствительность корпуса

  • Имена разделов, записи и директивы не чувствительны к регистру. Например, версия , VERSION и Version являются одинаково допустимыми спецификациями имени раздела в INF-файле.

Обязательное и дополнительное содержимое

  • Набор обязательных и необязательных разделов, записей и директив в любом конкретном INF-файле зависит от типа устанавливаемого устройства / драйвера или компонента (например, DLL установщика приложения или класса устройства).

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

  • В определениях синтаксиса необязательные записи ограничиваются скобками без жирного шрифта ([,]). С другой стороны, полужирные скобки ( [, ] ) являются обязательными элементами записи, в которой они содержатся.В следующем примере скобки вокруг версии являются обязательными, а скобки вокруг Class = имя класса указывают, что эта запись является необязательной.

      [ Версия ]  Подпись = "подпись-имя" [Class = class-name] ... 

Названия разделов

  • Разделы можно уточнить в любом порядке. Большинство файлов INF по соглашению перечисляют разделы в определенном порядке, но Windows находит разделы по имени, а не по расположению в файле INF.

  • Каждый раздел в INF-файле начинается с имени раздела, заключенного в квадратные скобки ( [] ). Имя раздела может быть определено системой или определено средством записи INF.

    Например, [Изготовитель] определяет начало раздела , названного производителем, а [ Std.Mfg ] представляет конкретное имя раздела Models , определенное средством записи INF.

    Имя раздела имеет максимальную длину 255 символов в Windows 2000 и более поздних версиях Windows.

    Каждый раздел заканчивается в начале нового [ имя раздела ] или на отметке конца файла.

  • Если несколько разделов в INF-файле имеют одинаковое имя, система объединяет их записи и директивы в один раздел.

  • Если оно не заключено в двойные кавычки ( "), имя раздела, определяемое средством записи INF, должно быть уникальной для INF строкой явно видимых символов, за исключением некоторых символов со значениями, специфичными для INF. .В частности, имя раздела без кавычек, на которое ссылается запись раздела или директива, не может иметь начальных или конечных пробелов, символа перевода строки, символа возврата или любого невидимого управляющего символа, а также не должно содержать табуляции. Кроме того, он не может содержать символы скобки ( [] ), одинарный символ процента (% ), точку с запятой (; ) или любые внутренние двойные кавычки ( ") символы и в качестве последнего символа не может быть обратной косой черты ( \ ).

    Например, Std.Mfg и Std_Mfg являются уникальными и допустимыми именами разделов, если на них ссылается запись или директива файла INF, но Std; Mfg (с его внутренней точкой с запятой) недопустим, если он не заключен в двойные кавычки ( ")

    Указание имени раздела, определенного средством записи INF, в виде строки в кавычках " " отменяет большинство ограничений, которые были ранее описаны для символов в именах разделов, на которые имеются ссылки. Такое разделенное имя раздела может содержать почти любые явно или неявно видимые символы, кроме закрывающей скобки (] ), если соответствующий раздел в INF-файле точно соответствует этой строке в кавычках " " .

    Например, " ;; Std Mfg " является допустимой ссылкой на имя раздела, если соответствующее объявление раздела в INF-файле точно совпадает с именем внутри двойных кавычек по отношению к его символам пробела и точки с запятой как [ ;; Стандартный изготовитель ] .

Использование строковых токенов

  • Многие значения в файле INF, в том числе имена разделов, определенные средством записи INF, могут быть выражены как токены строковых ключей в форме % strkey % .В разделе INF Strings файла INF каждый строковый ключ должен быть связан со строковым значением, которое состоит из последовательности явно видимых символов. При необходимости код настройки преобразует строковое значение в Unicode.

    Для получения дополнительной информации о том, как определить % strkey % токенов и их соответствующие значения, см. Описание INF-строк раздела .

Формат строки, продолжение и комментарии

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

  • Символ обратной косой черты ( \ ) может использоваться в качестве явного продолжения строки в записи или директиве. Однако символы обратной косой черты также используются в спецификациях пути. Чтобы гарантировать, что символ обратной косой черты, который появляется в спецификации пути, не будет неправильно истолкован как продолжитель строки, используйте следующую стратегию:

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

        CopyFiles = "SomeDirectory \" \ , SomeFile  
    • Избегайте использования символа обратной косой черты, как показано в следующем примере. Windows игнорирует первую обратную косую черту и интерпретирует вторую обратную косую черту как продолжение строки.

        CopyFiles = SomeDirectory \\ , SomeFile  
    • Следующий синтаксис действителен и эквивалентен CopyFiles = "SomeDirectory \", SomeFile; Комментарий .

        CopyFiles = "SomeDirectory \" \; комментарий , SomeFile  

      Поскольку текст после точки с запятой игнорируется, CopyFiles = "SomeDirectory \"; комментарий, SomeFile не работает.

  • Комментарии начинаются с точки с запятой (; ). При синтаксическом анализе и интерпретации файла INF система предполагает, что следующее не имеет отношения к процессу установки:

    • Любые символы, следующие за точкой с запятой в той же строке, если точка с запятой не появляется в строке в кавычках " " или % strkey % token
    • Любая пустая строка, не содержащая ничего, кроме символа перевода строки или возврата
  • Запятые разделяют значения, указанные в записях разделов и директивах.

    Запись или директива файла INF могут опускать необязательное значение в середине списка значений, но запятые должны оставаться. Файлы INF могут опускать запятые в конце.

    Например, рассмотрим синтаксис для записи раздела SourceDisksFiles :

    имя файла = diskid [, [ subdir ] [, размер ]]

    Запись, в которой не указано значение subdir , но предоставляется значение размера , должна указывать разделители запятых для обоих значений, как показано в следующем примере:

    имя файла = diskid ,, размер

    Запись в INF-файле, в которой отсутствуют два необязательных значения, может иметь следующий формат:

    имя файла = diskid

  • Чтобы включить символ процента (%) в значения, предоставленные в записях и директивах разделов, экранируйте символ процента другим символом процента.

    Например, рассмотрите этот оператор в [add-registry-section] разделе:

    HKR ,, EventMessageFile, 0x00020000, "%% SystemRoot %% \ System32 \ IoLogMsg.dll"

    В качестве значения реестра будет установлено следующее значение:

    % SystemRoot% \ System32 \ IoLogMsg.dll

  • Чтобы включить символ двойной кавычки (") в значения, предоставленные в записях раздела и директивах, экранируйте символ двойной кавычки с другим символом двойной кавычки.Обратите внимание, что строка должна находиться в кавычках " " ".

    Например, рассмотрите этот оператор в [add-registry-section] разделе:

    HKR ,, Пример ,, "Показать" "пример" "строка"

    В качестве значения реестра будет установлено следующее значение:

    Показать строку «пример»

INF Ограничения размера

  • Максимальная длина поля INF-файла в символах до подстановки строки, включая завершающий символ NULL, составляет 4096.

  • После подстановки строки максимальная длина строки файла INF в символах составляет 4096, что включает завершающий символ NULL.

  • Однако имейте в виду, что Plug and Play (PnP) может налагать более строгие ограничения на определенные поля INF-файла, которые он распознает или использует, например описание устройства, поставщик драйвера и производитель устройства.

.

Смотрите также