首页 文章

需要在Windows 7中完全删除设备驱动程序

提问于
浏览
12

我有一个旧的USB设备,Windows 7无法识别,所以我 grab 了处理USB通信的芯片的设备驱动程序 . 我修改它后,我用它来安装设备 . 愚蠢我知道,但现在我需要摆脱它 .

以下是inf设置文件中的代码 . 这没有我改变的VID和PID . 我需要撤消它所做的所有更改 .

; Installation INF for the Cypress Generic USB Driver for Windows Vista
; Processor support for OS unknown platforms.
;
; (c) Copyright 2010 Cypress Semiconductor Corporation
;

[Version]
Signature="$WINDOWS NT$"
Class=USB
ClassGUID={36FC9E60-C465-11CF-8056-444553540000}
provider=%CYUSB_Provider%
CatalogFile=CYUSB.cat
DriverVer=10/12/2010,3.4.4.000

[SourceDisksNames]
1=%CYUSB_Install%,,,

[SourceDisksFiles]
CYUSB.sys = 1

[DestinationDirs]
CYUSB.Files.Ext = 10,System32\Drivers

[ControlFlags]
ExcludeFromSelect = *

[Manufacturer]
%CYUSB_Provider%=Device,NT,NTx86,NTamd64

;for all platforms
[Device]
;%VID_XXXX&PID_XXXX.DeviceDesc%=CyUsb, USB\VID_XXXX&PID_XXXX


;for windows 2000 non intel platforms
[Device.NT]
; Cypress FX2LP default ID
%VID_04B4&PID_8613.DeviceDesc%=CyUsb, USB\VID_04B4&PID_8613

; Cypress FX1 default ID
%VID_04B4&PID_6473.DeviceDesc%=CyUsb, USB\VID_04B4&PID_6473

; Cypress Streamer Device.  CyStream firmware examples use this VID/PID
%VID_04B4&PID_1003.DeviceDesc%=CyUsb, USB\VID_04B4&PID_1003

; Cypress FX2LP Example Device.  DVK firmware examples use this VID/PID
%VID_04B4&PID_1004.DeviceDesc%=CyUsb, USB\VID_04B4&PID_1004


;for x86 platforms
[Device.NTx86]
; Cypress FX2LP default ID
%VID_04B4&PID_8613.DeviceDesc%=CyUsb, USB\VID_04B4&PID_8613

; Cypress FX1 default ID
%VID_04B4&PID_6473.DeviceDesc%=CyUsb, USB\VID_04B4&PID_6473


; Cypress Streamer Device.  CyStream firmware examples use this VID/PID
%VID_04B4&PID_1003.DeviceDesc%=CyUsb, USB\VID_04B4&PID_1003

; Cypress FX2LP Example Device.  DVK firmware examples use this VID/PID
%VID_04B4&PID_1004.DeviceDesc%=CyUsb, USB\VID_04B4&PID_1004


;for x64 platforms
[Device.NTamd64]
; Cypress FX2LP default ID
%VID_04B4&PID_8613.DeviceDesc%=CyUsb, USB\VID_04B4&PID_8613

; Cypress FX1 default ID
%VID_04B4&PID_6473.DeviceDesc%=CyUsb, USB\VID_04B4&PID_6473

; Cypress Streamer Device.  CyStream firmware examples use this VID/PID
%VID_04B4&PID_1003.DeviceDesc%=CyUsb, USB\VID_04B4&PID_1003

; Cypress FX2LP Example Device.  DVK firmware examples use this VID/PID
%VID_04B4&PID_1004.DeviceDesc%=CyUsb, USB\VID_04B4&PID_1004

[CYUSB]
CopyFiles=CYUSB.Files.Ext
AddReg=CyUsb.AddReg

[CYUSB.HW]
AddReg=CYUSB.AddReg.Guid

[CYUSB.Services]
Addservice = CYUSB,2,CYUSB.AddService

[CYUSB.NT]
CopyFiles=CYUSB.Files.Ext
AddReg=CyUsb.AddReg

[CYUSB.NT.HW]
AddReg=CYUSB.AddReg.Guid

[CYUSB.NT.Services]
Addservice = CYUSB,2,CYUSB.AddService


[CYUSB.NTx86]
CopyFiles=CYUSB.Files.Ext
AddReg=CyUsb.AddReg

[CYUSB.NTx86.HW]
AddReg=CYUSB.AddReg.Guid

[CYUSB.NTx86.Services]
Addservice = CYUSB,2,CYUSB.AddService

[CYUSB.NTamd64]
CopyFiles=CYUSB.Files.Ext
AddReg=CyUsb.AddReg

[CYUSB.NTamd64.HW]
AddReg=CYUSB.AddReg.Guid

[CYUSB.NTamd64.Services]
Addservice = CYUSB,2,CYUSB.AddService


[CYUSB.AddReg]
; Deprecating - do not use in new apps to identify a CYUSB driver
HKR,,DevLoader,,*ntkern
HKR,,NTMPDriver,,CYUSB.sys
; You may optionally include a check for DriverBase in your application to check for a CYUSB driver
HKR,,DriverBase,,CYUSB.sys
HKR,"Parameters","MaximumTransferSize",0x10001,4096
HKR,"Parameters","DebugLevel",0x10001,2
HKR,,FriendlyName,,%CYUSB_Description%

[CYUSB.AddService]
DisplayName    = %CYUSB_Description%
ServiceType    = 1                  ; SERVICE_KERNEL_DRIVER
StartType      = 3                  ; SERVICE_DEMAND_START
ErrorControl   = 1                  ; SERVICE_ERROR_NORMAL
ServiceBinary  = %10%\System32\Drivers\CYUSB.sys
AddReg         = CYUSB.AddReg
LoadOrderGroup = Base

[CYUSB.Files.Ext]
CYUSB.sys

[CYUSB.AddReg.Guid]
HKR,,DriverGUID,,%CYUSB.GUID%

[Strings]
CYUSB_Provider    = "Cypress"
CYUSB_Company     = "Cypress Semiconductor Corporation"
CYUSB_Description = "Cypress Generic USB Driver"
CYUSB_DisplayName = "Cypress USB Generic"
CYUSB_Install     = "Cypress CYUSB Driver Installation Disk"
VID_04B4&PID_8613.DeviceDesc="Cypress EZ-USB FX2LP No EEPROM"
VID_04B4&PID_6473.DeviceDesc="Cypress EZ-USB FX1 - No EEPROM"
VID_04B4&PID_1004.DeviceDesc="Cypress EZ-USB Example Device"
VID_04B4&PID_1003.DeviceDesc="Cypress EZ-USB Streamer Device"
VID_XXXX&PID_XXXX.DeviceDesc="Cypress USB Generic Driver (3.4.4.000)"
CYUSB.GUID="{AE18AA60-7F6A-11d4-97DD-00010229B959}"
CYUSB_Unused      = "."

3 回答

  • 0

    另一种选择(Microsoft方式,不在注册表中进行随机未知删除)是将CMD作为“以管理员身份运行”启动,然后通过以下方式列出Windows 7驱动程序存储中所有已安装的驱动程序:

    pnputil -e

    如果这导致更长的列表,您可以通过以下方式将其传输到文件中:

    pnputil -e> C:\ driverexport.txt

    如果您现在找到了需要删除的驱动程序,请使用以下命令:

    pnputil.exe -d OemNUMBER.inf

    将NUMBER替换为您示例中的数字 . 您可以尝试使用-F强制卸载 . 重启完成后,驱动程序应该消失 .

    这对于删除旧驱动程序并获得一些HD空间也很有用 .

    Source

  • 36

    如果您已为设备安装了驱动程序,并且想要将其删除(以及驱动程序存储区),只需插入设备即可 . 打开“设备管理器”,右键单击该设备并选择“卸载” . 将出现一个“删除驱动程序软件”框 - 选中此框并卸载驱动程序 . 这应该从驱动程序存储区中删除它并从注册表中卸载该设备 .

    如果设备的所有驱动程序都已删除,您应该能够将其插入并查看没有驱动程序加载该设备 . 如果确实如此,您的驱动程序存储区中可能会有多个版本,并且您将执行相同的步骤,直到Windows无法识别该设备 .

    请注意,SYS文件将保留在每个策略的C:\ Windows \ System32 \ drivers目录中,但如果删除了使用它的所有设备和安装,您也可以安全地删除此驱动程序 .

  • 7

    虽然上面答案中提到的步骤可能是正确的,但这是一种非常简单的方法:

    转到 Device Manager 或者运行命令

    devmgmt.msc

    右键单击需要卸载的设备,然后转到 Properties . 选择 Details 选项卡,然后从下拉列表中选择 INF Name

    在使用Admin权限打开的命令窗口中,在此命令中具有INF名称类型

    pnputil.exe -d INFName.inf

    如果您遇到问题,请尝试强制删除

    pnputil.exe -f -d INFName.inf

相关问题