Hi Fellas , please am building a vb application to automatically detect modems and connect it to the internet.
A simple form with a combobox to list the detected modems,a label to display it when it is connected to the internet and a button to connect the modem... This is the code :

Imports System.Management

Public Class Form1

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
    Dim ports() As String
    ports = Split(ModemsConnected(), "'''")
    For i As Integer = 0 To ports.Length = 2
        ComboBox1.Items.Add(ports(i))

    Next
End Sub
Public Function ModemsConnected() As String
    Dim modems As String = ""
    Try
        Dim searcher As New ManagementObjectSearcher( _
            "root\CIMV2", _
            "SELECT * FROM Win32_POTSModem")

        For Each queryObj As ManagementObject In searcher.Get()
            If queryObj("Status") = "OK" Then
                modems = modems & (queryObj("AttachedTo") & " - " & queryObj("Description") & "***")
            End If
        Next
    Catch err As ManagementException
        MessageBox.Show("An error occurred while querying for WMI data: " & err.Message)
        Return ""
    End Try
    Return modems
End Function

Private Sub ComboBox1_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ComboBox1.SelectedIndexChanged

End Sub

Private Sub ComboBox1_SelectedValueChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles ComboBox1.SelectedValueChanged
    Label1.Text = Trim(Mid(ComboBox1.Text, 1, 5))

End Sub

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
    Try
        With SerialPort1
            .PortName = Label1.Text
            .BaudRate = 9600
            .Parity = IO.Ports.Parity.None
            .DataBits = 8
            .StopBits = IO.Ports.StopBits.One
            .Handshake = IO.Ports.Handshake.None
            .RtsEnable = True
            .ReceivedBytesThreshold = 1
            .NewLine = vbCr
            .ReadTimeout = 1000
            .Open()

        End With
        If SerialPort1.IsOpen Then
            Label3.Text = "connected"
        Else
            Label3.Text = "Got some error"

        End If

    Catch ex As Exception
        MsgBox(ex.Message)
    End Try
End Sub

End Class.

And after i run the application , I got the following error :

The given port name does not start with COM/com or does not resolve to a valid serial port.
Parameter name: portName.

Please any HELP.
Thanks.

Here's how I work with modems and other things on serial ports.

FIRST I use a terminal program and document what I do as the Human step by step.
SECOND I sketch out my new app.
THIRD I meet with my stakeholders and see if they buy in.
FOURTH Coding begins.

I think you skipped step 1.

Be a part of the DaniWeb community

We're a friendly, industry-focused community of developers, IT pros, digital marketers, and technology enthusiasts meeting, networking, learning, and sharing knowledge.