1.获得devcon.exe

有两种方法,一是直接去网上下,不过下的很多64位的都不能用,二是自己装个ddk去安装目录下找,在WinDDK\7600.16385.1\tools\devcon下,当然还可以有第三种方法,我传个资源上来,呵呵,亲测可用

2.用法

以我自己的经验,直接去命令行下使用时,要以管理员身份去执行,否则安装、卸载等操作会失败

具体参数 devcon -help 就出来了,看不是很懂得话,官网有中文解释,如下:

DevCon 是一个带有内置文档的命令行实用工具。如果您运行 devcon help 命令,将会出现以下命令列表和描述信息。devcon help命令可提供关于任何命令的详细帮助。使用其中的某些命令,您可以指定远程目标计算机。如果您在 WOW64 上使用 32 位版的 DevCon,则以下命令有效。

设备控制台帮助:
devcon.exe [-r] [-m:\\<machine>] <command> [<arg>...]
-r 如果指定它,在命令完成后若需要则重新启动计算机。
<machine> 是目标计算机的名称。
<command> 是将要执行的命令(如下所示)。
<arg>... 是命令需要的一个或多个参数。
要获取关于某一特定命令的帮助,请键入:devcon.exe help <command>
classfilter 允许修改类别筛选程序。
classes 列出所有设备安装类别。
disable 禁用与指定的硬件或实例 ID 匹配的设备。
driverfiles 列出针对设备安装的驱动程序文件。
drivernodes 列出设备的所有驱动程序节点。
enable 启用与指定的硬件或实例 ID 匹配的设备。
find 查找与指定的硬件或实例 ID 匹配的设备。
findall 查找设备,包括那些未显示的设备。
help 显示此信息。
hwids 列出设备的硬件 ID。
install 手动安装设备。
listclass 列出某一安装类别的所有设备。
reboot 重新启动本地计算机。
remove 删除与特定的硬件或实例 ID 匹配的设备。
rescan 扫描以发现新的硬件。
resources 列出设备的硬件资源。
restart 重新启动与特定的硬件或实例 ID 匹配的设备。
stack 列出预期的设备驱动程序堆栈。
status 列出设备的运行状态。
update 手动更新设备。
UpdateNI 手动更新设备,无用户提示
SetHwID 添加、删除和更改根枚举设备的硬件 ID 的顺序。

DevCon 命令示例

devcon -m:\\test find pci\*

列出计算机 test 上的所有已知 PCI 设备。(通过使用 -m,您可以指定一个目标计算机。您必须使用“进程间通信”(IPC) 访问此计算机。)

devcon -r install %WINDIR%\Inf\Netloop.inf *MSLOOP

安装一个新的 Microsoft 环回适配器实例。这将创建一个新的根枚举设备节点,使用此节点您可以安装“虚拟设备”,如环回适配器。如果需要重新启动计算机,此命令还将以安静模式重新启动计算机。

devcon classes

列出所有已知的安装类别。输出结果包含短的未本地化的名称(例如,“USB”)和描述性名称(例如,“通用串行总线控制器”)。

devcon classfilter upper !filter1 !filter2

删除这两个指定的筛选程序。

devcon classfilter lower !badfilter +goodfilter

用“goodfilter”替换“badfilter”。

devcon driverfiles =ports

列出与 ports 安装类别中的每一个设备关联的文件。

devcon disable *MSLOOP

禁用硬件 ID 以“MSLOOP”结尾(包括“*MSLOOP”)的所有设备。

devcon drivernodes @ROOT\PCI_HAL\PNP0A03

列出设备“ROOT\PCI_HAL\PNP0A03”的所有兼容驱动程序。这可以用来确定为什么选择原配的设备信息 (.inf) 文件而不选第三方 .inf 文件。

devcon enable '*MSLOOP

启用硬件 ID 为“*MSLOOP”的所有设备。单引号指示必须严格按字面解释硬件 ID(换句话说,星号 [“*”] 真的 一个星号,而不是通配符)。 

devcon find *

列出本地计算机上存在的所有设备的设备实例。 

devcon find pci\*

列出本地计算机上所有已知的“外围组件互连”(PCI) 设备(如果一个设备的硬件 ID 以“PCI\”为前缀,此命令就认为该设备是 PCI 设备)。

devcon find =ports *pnp*

列出存在的作为 ports 安装类别的成员而且硬件 ID 中包含“PNP”的设备。 

devcon find =ports @root\*

列出存在的作为 ports 安装类别的成员而且在枚举树的“root”分支中的设备(实例 ID 以“root\”为前缀)。请注意,有关实例 ID 的格式化方式,不应作任何编程假定。要确定根设备,可以检查设备状态位。此功能包括在 DevCon 中是为了帮助进行调试。

devcon findall =ports

列出 ports 类别的“不存在”的设备和存在的设备。这包括已经被删除的设备、从一个插槽移到另一个插槽的设备,以及在某些情况下由于 BIOS 改变而被不同地枚举的设备。

devcon listclass usb 1394

列出命令中所列的每个类别(本例中是 USB 和 1394)的所有存在的设备。

devcon remove @usb\*

删除所有 USB 设备。被删除的设备列出时将显示其删除状态。

devcon rescan

重新扫描以发现新的“即插即用”设备。 

devcon resources =ports

列出由 ports 安装类别中的所有设备使用的资源。

devcon restart =net @'ROOT\*MSLOOP\0000

重新启动环回适配器“ROOT\*MSLOOP\0000”。命令中的单引号指示必须按字面解释实例 ID。 

devcon hwids=mouse

列出系统中鼠标类设备的所有硬件 ID。

devcon sethwid @ROOT\LEGACY_BEEP\0000 := beep

将硬件 ID beep 赋予旧式蜂鸣设备。

devcon stack =ports

列出设备预期的驱动程序堆栈。包括设备和类别高层/低层筛选程序,以及控制服务。

devcon status @pci\*

列出实例 ID 以“pci\”开头的每一个存在设备的状态。

devcon status @ACPI\PNP0501\1

列出特定设备实例的状态,在本例中是一个高级配置和电源界面 (ACPI) - 枚举的串行端口。

devcon status @root\rdp_mou\0000

列出 Microsoft 终端服务器或终端服务鼠标驱动程序的状态。

devcon status *PNP05*

列出所有 COM 端口的状态。 

devcon update mydev.inf *pnp0501

更新与硬件 ID *pnp0501 严格匹配的所有设备,让它们使用 Mydev.inf 中与硬件 ID *pnp0501 关联的最好的驱动程序。

注意:即使系统上已经存在更好的匹配项,这一更新也将强制所有设备使用 Mydev.inf 中的驱动程序。如果在获得签名之前,您想要在开发过程中安装驱动程序的新版本,则这是很有用的。此更新仅影响与指定的硬件 ID 匹配的设备,不会影响到其子设备。如果指定的 .inf 文件未经签名,则 Windows 可能会显示一个对话框,提示您确认是否应安装此驱动程序。如果需要重新启动计算机,将报告这一情况并且 DevCon 返回一个级别 1 错误。如果指定 -r,在需要重新启动计算机时就会自动重启。

注意

  • DevCon 将返回一个在脚本中使用的错误级别:

    “0”指示成功。

    “1”指示需要重新启动。

    “2”指示失败。

    “3”指示语法错误。
  • 如果您指定 -r 并且需要重新启动,则在处理完所有设备后,将在无任何警告信息的情况下重新启动。
  • 如果您指定 -m:\\computer 并且命令对远程计算机不起作用,将报告一个错误。
  • 为便于交互,DevCon 允许在实例 ID 中使用通配符。不要根据一台计算机或一种操作系统版本去推测有关另一台计算机或另一种操作系统版本的实例 ID 格式的任何信息。

【VS开发】获得devcon.exe的更多相关文章

  1. 【VS开发】设备控制台 (DevCon.exe) 示例

    设备控制台 (DevCon.exe) 示例 本部分提供以下设备控制台 (DevCon.exe) 命令的示例: DevCon HwIDs 示例 1:查找所有硬件 ID 示例 2:使用模式查找硬件 ID ...

  2. 【VS开发】设备控制台 (DevCon.exe) 命令

    设备控制台 (DevCon.exe) 命令 DevCon (DevCon.exe) 是一个命令行工具,可以显示有关运行 Windows 的计算机上设备的详细信息.还可以使用 DevCon 启用.禁用. ...

  3. 利用 devcon.exe实现自动安装驱动(转)

    http://blog.csdn.net/u012814201/article/details/44919125 工作的原因打算通过devcon.exe实现自动打包的功能,由于之前一直在Linux那个 ...

  4. 如何安全的下载Devcon.exe文件

    devcon.exe是windows设备管理器的命令行版本,可以让你在cmd中修改设备,但是微软没有提供单独的下载,只能下载一个2G多的wdk包(windows drive kits)才行.私下使用别 ...

  5. nw.js开发第一个程序(html开发桌面程序exe)

    一.环境配置 windows系统 cnpm install node 下载nw.js https://github.com/nwjs/nw.js 找到download下载合适的版本 二.开发 项目目录 ...

  6. Python开发—打包成exe

    pychaim下PyInstaller 打包 python程序 使用PyCharm开发python Pyinstaller打包jieba项目相关解决方案 Python打包成exe 一.安装pyinst ...

  7. JAVA开发--U盘EXE恢复工具

    原理比较简单,在学校机房U盘总被感染,写一个工具来方便用 package com.udiskrecover; import java.awt.Container; import java.awt.Fl ...

  8. 自动添加 Qt 开发生成的 exe 所需的依赖环境

    双击获取 exe 文件路径 cd 进入文件目录的命令 调用 Qt 自带的软件进行环境配置,命令如下 windeployqt ***.exe 自动配置了依赖环境

  9. 【ARM-Linux开发】wubi.exe安装Ubuntu14.04出现为/检查磁盘时发生严重错误的解决方法

    原文:http://jingyan.baidu.com/article/0aa22375bbffbe88cc0d6419.html 我写过一篇叫做 如何硬盘装麒麟系统 的经验,介绍了如何不使用优盘的情 ...

随机推荐

  1. 钉钉报警-prometheus-alertmanager

    alertmanager alertmanager可以放在远程服务器上 报警机制 在 prometheus 中定义你的监控规则,即配置一个触发器,某个值超过了设置的阈值就触发告警, prometheu ...

  2. 【BZOJ4176】 Lucas的数论

    Description 去年的Lucas非常喜欢数论题,但是一年以后的Lucas却不那么喜欢了. 在整理以前的试题时,发现了这样一道题目“求Sigma(f(i)),其中1<=i<=N”,其 ...

  3. 【CUDA 基础】3.3 并行性表现

    title: [CUDA 基础]3.3 并行性表现 categories: - CUDA - Freshman tags: - nvprof toc: true date: 2018-04-15 21 ...

  4. HTML标签功能分类

    按功能类别对HTML标签进行分类,源自HTML 参考手册 基础 标签 描述 <!DOCTYPE> 定义文档类型. html 定义 HTML 文档. title 定义文档的标题. body ...

  5. EBS 修改系统名称

    修改EBS登录系统的左上角名称 方法: 修改 配置文件: 地点名称  ,在地点层输入相应的名称即可

  6. LC 959. Regions Cut By Slashes

    In a N x N grid composed of 1 x 1 squares, each 1 x 1 square consists of a /, \, or blank space.  Th ...

  7. Hibernate3核心API-SchemaExport类

  8. ArrayList去除集合中字符串的重复值

    package com.heima.list; import java.util.ArrayList; import java.util.Iterator; import java.util.List ...

  9. Java界面程序实现图片的放大缩小

    Java界面程序实现图片的放大缩小.这个程序简单地实现了图片的打开.保存.放大一倍.缩小一倍和固定缩放尺寸,但是并没有过多的涵盖对图片的细节处理,只是简单地实现了图片大小的放缩. 思维导图如下: 效果 ...

  10. 阶段3 3.SpringMVC·_05.文件上传_2 文件上传之传统方式上传代码回顾

    先创建表单 enctype选择multipart/form-data 把表单分成几个部分 导入对应的包 解析request拿到上传的文件对象 拿到某个路径的绝对路径 以后什么异常全抛出,改成Excep ...