2011-03-24 66 views
1

我想创建一个程序来切换当前连接的设备的COM端口号。例如,我有一个设备分配给COM端口号5,我想改变它可能COM端口第20位。我该怎么去做呢?有没有我可以建立的参考教程等?编程改变一个COM端口

在此先感谢。

+0

该号码由驾驶员分配。没有标准的IOCTL可以让你告诉司机使用什么。它们通常在“设备管理器”中有一个属性页,以便您对其进行更改。 – 2011-03-24 03:35:29

回答

0

我们似乎正在研究类似的问题。 AFAIK有两种解决这个问题的方法。第一个是直接操作Windows内的COM端口环境(非常棘手),第二个是改变那些COM端口相关驱动程序的参数,这些驱动程序允许直接在各自的驱动程序环境中更改参数类型(相当容易) 。

这里是一个COM端口相关的驱动程序参数的改变(实际上他们几乎看起来都一样,至少是那些我已经encoutered至今)一个例子:

1)分离设备(物理或逻辑/微软DEVCON能为你做的)

2)停止驱动程序服务

3)更改注册表键 [HKEY_LOCAL_MACHINE \系统\ CurrentControlSet \枚举\ USB \ VID _ **** & PID _ ** ** & MI _ ** {设备实例ID(DIID)} \设备参数] “PORTNAME”= “COM123”

4)重新连接设备(物理或逻辑/微软DEVCON能为你做的)

5)启动驱动程序服务

PS:请让我知道如果你找到一个很好的解决方案。