WMI - Win32_PnPEntity

In my app, I just need to find the COM port for a particular device, whose name I know. I found that through WMI, the "Name" field in Win32_PnPEntity for serial ports generally has the driver's COM port listed in parentheses right after it.


Code:
        Dim moReturn As Management.ManagementObjectCollection
        Dim moSearch As Management.ManagementObjectSearcher
        Dim mo As Management.ManagementObject
        Dim str As String
 
        moSearch = New Management.ManagementObjectSearcher("Select * from Win32_SerialPort")
        moReturn = moSearch.Get
        For Each mo In moReturn
            str = CStr(mo.Properties.Item("Name").Value)
            If str.Contains("COM") Then
                'If CStr(mo.Properties.Item("Name").Value).Contains("Prolific") Then
                'returns something like: "Prolific USB-to-Serial Comm Port (COM17)"
                ListBox1.Items.Add("[*] " & str)
            Else
                ListBox1.Items.Add("[ ] " & str)
            End If
        Next
 
This is cumbersome because I'd like to be able to intelligently sort through the list of COM ports by name to guess the correct port (e.g. find whichever says "USB" in it), in case the user's device is called something different from the one I'm searching for here.