获取 COM 端口 (Gertec)

获取 COM 端口 (Gertec)

我需要找到 Gertec 设备的“COM 端口”。我尝试了下面列出的一些方法,也使用了其他几种方法,但都没有成功。

使用此指令,它返回 Gertec,但它不显示“COM 端口”。

gwmi Win32_USBControllerDevice |%{[wmi]($_.Dependent)} | Out-GridView -Title 'Select a device' -OutputMode Single | select name,description, deviceID, manufacturer, caption

https://i.stack.imgur.com/XUWP9.png

我运行该指令,它返回除 COM10 端口之外的所有内容
Get-WmiObject -Class Win32_SerialPort | Select-Object Name, Description, DeviceID, Manufacturer, Caption

https://i.stack.imgur.com/Ol0Am.png

答案1

帖子 Powershell 列出串行端口 + 说明 有这样的建议。

列出所有串行设备:

Get-WMIObject Win32_SerialPort

还有一个很好的 脚本由 not2qubit 编写 我在此重述一下:

$mydevs = (Get-PnPDevice | Where-Object{$_.PNPClass -in  "WPD","AndroidUsbDeviceClass","Modem","Ports" } | 
    Where-Object{$_.Present -in "True"} | 
    Select-Object Name,Description,Manufacturer,PNPClass,Service,Present,Status,DeviceID | 
    Sort-Object Name)


$mydevs | Format-Table Description, Manufacturer, PNPClass, Service,
    @{Label="COM port"; Expression={ ($_.Name -Match "\((COM\d{1,2})\)" | Out-Null && $Matches[1]) }},
    @{Label="VID:PID"; Expression={ ($_.DeviceID -Match "USB\\VID_([0-9a-fA-F]{4})\&PID_([0-9a-fA-F]{4})" | Out-Null && ('{0}{1}{2}' -f ${Matches}[1], ":", ${Matches}[2]).ToLower() ) }},
    Present, Status

您可能需要在PNPClass上面第一个命令中添加更多类型,以包含 Gertec 设备。请参阅链接的答案以获取输出示例。

答案2

您可以从注册表中获取相关信息

Get-ItemProperty "HKLM:\HARDWARE\DEVICEMAP\SERIALCOMM\"

将结果通过管道传输到 Gertec 设备的过滤器,但不确定特定的过滤器需要什么,在您的情况下可能类似于。

| Select-Object "*ger*"

相关内容