我有一台客户端(XP SP3)机器,其中安装了较新的驱动程序。
不幸的是,虽然这些(音频)驱动程序修复了麦克风增强功能,但它们也带来了一些问题,例如在选择音频设备的应用程序中没有输入工作和随机未命名的设备。我需要恢复驱动程序。
但是,回滚不起作用(驱动程序没有备份),手动选择较旧的驱动程序也是徒劳的,因为 XP 只是忽略它,并以其无穷的智慧说当前驱动程序更好,所以我没有理由要使用较旧的驱动程序。
我知道我可以直接删除打印机驱动程序 - 有没有其他驱动程序的选项?
顺便说一句。我做了一些研究,但似乎找不到明确的答案,所以我认为这对其他人也会有帮助。
答案1
Windows 使用多种因素来决定什么是“最佳”驱动程序,例如硬件 ID 匹配(与更具体的硬件 ID 匹配的 INF 是“更好的”)、驱动程序日期、驱动程序版本以及驱动程序是否经过签名。安装程序如何选择驱动程序如果你有兴趣的话,这里有详细信息。
至于如何删除较新的驱动程序,如果在“添加/删除程序”中列出了安装程序,则一定要使用它。如果没有,您应该能够通过右键单击设备管理器中的设备,选择“更新驱动程序...”、“从列表或特定位置安装”、“不要搜索。我将选择要安装的驱动程序”等来手动选择较旧的驱动程序。或者您已经尝试过了吗?(以及选择“卸载...”?)
如果其他方法都失败了,你可能会使用devcon
命令随 Windows 驱动程序工具包一起提供。您可以使用devcon dp_delete
或强制 Windows 选择其他驱动程序devcon update
. 还有一个旧版本的 devcon可直接下载(WDK 相当大)。
如果您决定手动.inf
从中删除驱动程序的文件%SystemRoot%\inf
,请确保也删除相应的.pnf
文件,因为 Windows 使用该文件来缓存部分/全部.inf
信息。
答案2
以下是一些卸载讨厌的 .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
答案3
已经尝试过 devcon,但它说没有 dp_delete 命令,在调查事情时我发现了一种更简单的方法。
有些人说,你可以删除 .inf 和 pnf。但他们没有告诉你如何找到它们。
首先,以管理员身份打开设备管理器,右键单击设备并选择属性,在驱动程序选项卡上,单击详细信息,您将获得驱动程序的.sys 文件名。
然后您必须找到正确的 .inf 和 pnf 进行删除,它们与 .sys 的名称不同。
按照以下指示http://winhlp.com/node/199,简而言之:
- 以管理员身份运行 cmd,cd 到 inf 文件夹:cd %windir%\inf
- 使用 .sys 文件的名称(不带扩展名)而不是“WG311T”,查找 inf 文件:
- 对于 (oem*.inf) 中的 %a,请查找 /i "WG311T" %a >>out.txt
- 用记事本打开out.txt,看看哪个oem*.inf文件是你的驱动程序。
- 删除 .inf 和 .pnf oem 文件(用“oemXX”替换找到您的驱动程序的 oem 文件的名称):
- 属性-h-r-s oemXX.*
- del oem12.* 重启
关注原文链接http://winhlp.com/node/199了解详细说明。
如何知道要查找的驱动程序的名称并未在此处解释,请记住它与 .sys 文件相同(没有扩展名)。
已测试成功从 Broadcom wifi 中删除 bcmwl6.sys 驱动程序。