COM(端口/串口)重新分配端口号

COM(端口/串口)重新分配端口号

COM(端口)重新计数

在设备管理器中,我们可以看到连接过的端口信息

如果勾选了显示隐藏设备,则所有连结过的记录都可显示出来

随着日常使用,电脑插过的设备越来越多,COM的数字也会越来越大

但是部分软件仅允许选择COM10以内,甚至COM5以内的

因此,我们就有了重置计数的需求

PnPUtil (有效)

尝试方案

PnPUtil (有效)

PnPUtil (PnPUtil.exe) 是一种命令行工具,可让管理员对 驱动程序包执行操作。 示例包括:

将驱动程序包添加到 驱动程序存储区。

在计算机上安装驱动程序包。

从驱动程序存储区中删除驱动程序包。

枚举当前位于驱动程序存储区中的驱动程序包。 仅列出非内置包的驱动程序包。 内置驱动程序包是 Windows 或其 service pack 的默认安装中包含的程序包。

我们使用PowerShell搭配pnputil.exe命令来完成操作

列出所有目前未连接的Ports(端口)

Get-PnpDevice -Class Ports -Status Unknown

删除所有未连接的设备

Get-PnpDevice -Class Ports -Status Unknown | ForEach-Object { pnputil /remove-device $_.InstanceId;}

新插入的设备开始重新分配

临时调整

如果仅仅是临时性的需要将某一个串口修改COM索引,可以在属性中进行调整

在要修改索引的设备上右键,弹出菜单选择属性,弹出窗口点击高级,在COM端口号(P)中选择一个新的端口号

点击确定即可完成更改

下面的非必要

端口已使用情况

清空端口使用中数据

Remove-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\COM Name Arbiter" -Name ComDB

清空端口号(无效)

清空注册表,让连接记录消失,以达到重新分配COM端口号的想法

执行命令

Remove-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\COM Name Arbiter" -Name ComDB

Remove-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\COM Name Arbiter\Devices" -Name *

重启计算机

命令解释

注册表路径:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\COM Name Arbiter\Devices

我们采用PowerShell命令来实现一步清理

查看当前已有得到COM记录

Get-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\COM Name Arbiter\Devices"

清空所有记录

Remove-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\COM Name Arbiter\Devices" -Name *

使用Windows 设备控制台 (Devcon.exe) (未尝试)

看到网上说可以使用Windows 设备控制台 (Devcon.exe)来清理设备,但是下载安装过程稿较为麻烦

DevCon (Devcon.exe)(即设备控制台)是一种命令行工具,用于显示有关运行 Windows 的计算机上的设备的详细信息。 可以使用 DevCon 启用、禁用、安装、配置以及删除设备。

后看到页面介绍中可以使用PnPutil替代,改为研究PnPutil

PnPUtil 随每个版本的 Windows 一起提供,并使用最可靠、最安全的 API,建议使用。 有关使用 PnPutil 而不是 devcon 的详细信息,请参阅 替换 DevCon。

相关画作

绝地求生中有哪些快捷键? 常用快捷键介绍
皇冠365bet体育投

绝地求生中有哪些快捷键? 常用快捷键介绍

📅 06-28 👁️ 728
崩坏3蚩尤外传心脏之路崩坏兽去哪刷
365bet注册

崩坏3蚩尤外传心脏之路崩坏兽去哪刷

📅 08-12 👁️ 9274
(女足世界杯)赛事前瞻:首轮收官韩国队亮相 挪威女足迎“生死之战”