devcon.exe命令的用法

2024-04-28 15:50:37 浏览数 (1)

devcon.exe出自微软,不是第三方,可用来查看硬件设备信息、安装或更新硬件驱动、禁用或启用硬件

主要用法示例如下

https://learn.microsoft.com/zh-cn/windows-hardware/drivers/devtest/devcon-general-commands

1、找出设备ID的命令举例

代码语言:javascript复制
devcon.exe classes

devcon.exe findall * 
devcon.exe findall =net
devcon.exe findall =scsiadapter
devcon.exe findall =CDROM
devcon.exe findall =MEDIA

以GPU机器为例,找出High Definition设备ID如下图划线部分

代码语言:javascript复制
devcon.exe findall =MEDIA|findstr Definition

2、启用、禁用命令示例(以系统实际表现为准),例如操作光驱

代码语言:javascript复制
cmd:
#云厂商虚拟光驱
devcon enable "IDECdRomQEMU_QEMU_DVD-ROM*"
devcon disable "IDECdRomQEMU_QEMU_DVD-ROM*"
#VMware光驱
devcon.exe enable "SCSICDROM*"
devcon.exe disable "SCSICDROM*"

powershell:
#云厂商虚拟光驱
cmd.exe /c devcon enable "IDECdRomQEMU_QEMU_DVD-ROM*" 2>&1 > $null
cmd.exe /c devcon disable "IDECdRomQEMU_QEMU_DVD-ROM*" 2>&1 > $null
#VMware光驱
cmd.exe /c devcon.exe enable "SCSICDROM*" 2>&1 > $null
cmd.exe /c devcon.exe disable "SCSICDROM*" 2>&1 > $null
devcon..exe.zip

3、删除硬件

比如,删除网卡

裸金属

# refer to https://docs.microsoft.com/zh-cn/windows-hardware/drivers/devtest/devcon-remove

# uninstall Broadcom device for baremetal

代码语言:javascript复制
devcon.exe /r remove "PCIVEN_14E4&DEV_D802&SUBSYS_802114E4&REV_00"

非裸金属

# uninstall virtio NetKVM device

代码语言:javascript复制
devcon.exe /r remove "PCIVEN_1AF4&DEV_1000&SUBSYS_00011AF4&REV_00"

4、安装或更新驱动

如果是更新驱动,请先执行clear_virtio_driver.bat卸载旧版本,重新安装viostor和netkvm驱动

clear_virtio_driver.bat内容如下

代码语言:javascript复制
for /r "C:WindowsINF" %%a in (oem*.inf) do (
REM     findstr /I "balloon.sys" "%%a" >nul && echo %%~na%%~xa && pnputil -f -d %%~na%%~xa
        findstr /I "netkvm.sys" "%%a" >nul && echo %%~na%%~xa && pnputil -f -d %%~na%%~xa
        findstr /I "viostor.sys"  "%%a" >nul && echo %%~na%%~xa && pnputil -f -d %%~na%%~xa
)

具体安装或更新驱动,参考https://cloud.tencent.com/developer/article/2354337

0 人点赞