5

На MSDN указано, что для установки INF-файлов в Windows XP или более поздних версиях существует два метода:

  • Программно через функцию SetupCopyOEMInf.
  • Добавьте запись с именем CopyInf в раздел INF.

Есть ли в разделе inf эквивалентная запись для удаления файлов inf, аналогичная функции SetupUninstallOEMInf ?

Я нашел это решение с помощью SetupUninstallOEMInf, но оно мне не подходит.

2 ответа2

1

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

rundll32 setupapi.dll,InstallHinfSection DefaultUninstall 132 <driver.inf>

rundll32 advpack.dll,LaunchINFSection <driver.inf>,UnInstall

rundll32 syssetup.dll,SetupInfObjectInstallAction Uninstall.NT 4 <driver.inf>

(Конечно, замените имя файла, включая кавычки, если необходимо.)

0

Нет. INF-файлы драйверов обычно не содержат раздел удаления. Как удалить файлы .inf из системы и как удалять устройства и пакеты драйверов | Microsoft Docs , DiUninstallDevice и SetupUninstallOEMInf - это способы удаления устройства и пакета драйверов, соответственно.

Из консоли вы можете вызвать последнюю версию с devcon как минимум версии 6 (из Windows 8.x DDK; подтверждено, что она работает в XP):

devcon [-f] dp_delete oemXXX.inf

(-f вызывает удаление, даже если драйвер используется)

Смотрите быстрый способ установки DevCon.exe? Как скачать утилиту, если вам нужно сделать это вручную.

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

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .