Назад | Перейти на главную страницу

Как полностью удалить драйвер на клиентском компьютере с Windows XP?

У меня есть клиентская машина (XP SP3), на которой установлены новые драйверы.

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

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

Я знаю, что на драйверах принтера я могу просто удалить - есть ли возможность для других драйверов?

Кстати. Я провел некоторое исследование и, кажется, не могу найти однозначного ответа, поэтому думаю, что это поможет и многим другим.

Windows использует ряд факторов, чтобы решить, какой драйвер является «лучшим», например, соответствие идентификатора оборудования (INF, которые соответствуют более конкретным идентификаторам оборудования, «лучше»), дата драйвера, версия драйвера и наличие подписи драйвера. Как программа установки выбирает драйверы есть подробности, если вам интересно.

Что касается того, как удалить новый драйвер, если у него есть установщик, указанный в разделе «Установка и удаление программ», то обязательно используйте его. В противном случае вы сможете вручную выбрать старый драйвер, щелкнув устройство правой кнопкой мыши в диспетчере устройств, выбрав «Обновить драйвер ...», «Установить из списка или определенного места», «Не искать. I выберет драйвер для установки »и т.п. Или вы уже пробовали? (Кроме выбора «Удалить ...»?)

Если ничего не помогает, вы можете добиться успеха, используя devcon команда, поставляемая с Windows Driver Kit. Вы можете удалить пакет драйверов, используя devcon dp_delete, или заставьте Windows выбрать другой драйвер с помощью devcon update. Также есть старая версия devcon доступен для прямой загрузки (WDK довольно большой).

Если вы прибегнете к удалению вручную .inf файл из %SystemRoot%\infобязательно удалите соответствующие .pnf файл также, потому что Windows использует его для кеширования некоторых / всех .inf Информация.

  • Вот несколько полезных советов по удалению надоедливых файлов .inf (ссылка Microsoft): http://support.microsoft.com/kb/813449

  • Что-то, что можно попробовать, если ваш драйвер использует .dll, - это отменить регистрацию dll драйвера: http://www.xp-vista.com/other/how-to-unregister-dll-files

    Стоит попробовать, просто убедитесь, что вы "cd" в каталог, содержащий dll.

  • Еще один полезный инструмент для такого рода проблем - это инструмент диагностики анализа изменений: http://support.microsoft.com/kb/924732

Пробовал devcon, но он говорит, что нет команды dp_delete, и, исследуя вещи, я нашел более простой способ.

Как говорят некоторые, вы можете удалить .inf и pnf. Они не говорят, как их найти.

Сначала откройте диспетчер устройств от имени администратора, щелкните устройство правой кнопкой мыши и выберите свойства, на вкладке драйвера щелкните сведения, и вы получите имя файла .sys драйвера.

Затем вы должны найти правильные .inf и pnf для удаления, они не совпадают с именами .sys.

Следуйте инструкциям от http://winhlp.com/node/199 , которые вкратце таковы:

  • cmd от имени администратора, cd в папку inf: cd% windir% \ inf
  • Используя имя файла .sys (без расширения) вместо «WG311T», найдите файл inf с:
    • для% a in (oem * .inf) найдите / i "WG311T"% a >> out.txt
  • Откройте out.txt с помощью блокнота и посмотрите, какой файл oem * .inf является вашим драйвером.
  • Удалите oem-файл .inf и .pnf, указав (вместо имени OEM-файла, в котором был найден ваш драйвер, подстановка "oemXX"):
    • attrib -h -r -s oemXX. *
    • del oem12. * Перезагрузка

Перейти по исходной ссылке http://winhlp.com/node/199 для получения подробных инструкций.

Как узнать имя драйвера, который нужно искать, там не объясняется, помните, что это то же самое, что и файл .sys (без расширения).

Протестировано удаление драйвера bcmwl6.sys из Broadcom Wi-Fi.

Вы должны найти соответствующий .inf файл и удалить его из каталога windows \ inf

В КБ статья, которая l0c0b0x упомянутое включает ссылку на вызов API, который можно использовать в Windows XP и более поздних версиях (в Windows 2000 файлы .pnf и .inf удаляются вручную).

SetupUninstallOEMInf ()

Функция SetupUninstallOEMInf удаляет указанный файл .inf и любой связанный файл .pnf. Если файл .inf был установлен с каталогом для подписи драйверов, каталог также удаляется. Вызывающий эту функцию должен иметь административные привилегии, в противном случае функция завершится ошибкой.

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