12月 12

COMポートの一覧を詳細な名前付きで取得する方法(VB2010,VB.NET)

USBバーチャルCOMのバーコードリーダーのポートが接続する度に変わってしまうので、
プログラム側からポート番号を取得!

VB2010でのサンプルソース

cmbPortNameという名前でComboBoxを設置した状態として

Dim PortsTable As New Dictionary(Of String, String)
Dim mcW32SerPort As New ManagementClass("Win32_SerialPort")
For Each aSerialPort As ManagementObject In mcW32SerPort.GetInstances()
    PortsTable.Add(DirectCast(aSerialPort.GetPropertyValue("Caption"), String), DirectCast(aSerialPort.GetPropertyValue("DeviceID"), String))
Next

cmbPortName.Items.Clear()
For Each aPortCaption As String In PortsTable.Keys
    cmbPortName.Items.Add(aPortCaption)
Next

で一覧を取得できます。

参考URL:シリアルポートの名前取得

http://axion.sakura.ne.jp/blog/index.php?UID=1278233577