共用方式為


作法:在 Visual Basic 中撥號連接到序列埠的數據機

本主題描述如何使用 My.Computer.Ports 在 Visual Basic 中撥號數據機。

一般而言,數據機會連接到電腦上的其中一個序列埠。 若要讓應用程式與數據機通訊,它必須將命令傳送至適當的序列埠。

撥打數據機

  1. 判斷數據機所連接的序列埠。 此範例假設數據機位於 COM1 上。

  2. 使用My.Computer.Ports.OpenSerialPort方法來取得對埠的參考。 如需詳細資訊,請參閱OpenSerialPort

    區塊 Using 可讓應用程式關閉串行埠,即使它產生例外狀況也一樣。 作為操作串行埠的所有程式碼都應該出現在這個區塊內,或出現在 Try...Catch...Finally 區塊內。

    Using com1 As IO.Ports.SerialPort =
            My.Computer.Ports.OpenSerialPort("COM1", 9600)
    End Using
    
  3. DtrEnable設定 屬性,表示計算機已準備好接受來自數據機的傳入傳輸。

    com1.DtrEnable = True
    
  4. 透過 Write 方法,透過序列埠將撥號命令和電話號碼傳送至數據機。

    com1.Write("ATDT 555-0100" & vbCrLf)
    

範例

Sub DialModem()
    ' Dial a number via an attached modem on COM1.
    Using com1 As IO.Ports.SerialPort =
            My.Computer.Ports.OpenSerialPort("COM1", 9600)
        com1.DtrEnable = True
        com1.Write("ATDT 555-0100" & vbCrLf)
        ' Insert code to transfer data to and from the modem.
    End Using
End Sub

此程式代碼範例也可作為 IntelliSense 代碼段使用。 在代碼段選擇器中,它位於 連接和網絡。 如需詳細資訊,請參閱 代碼段

正在編譯程式碼

此範例需要對 System 命名空間的參考。

健全的程式設計

此範例假設數據機已連線至 COM1。 我們建議您的程式代碼允許使用者從可用的埠清單中選取所需的序列埠。 如需詳細資訊,請參閱 如何:顯示可用的序列埠

此範例會使用 Using 區塊來確保應用程式即使擲回例外狀況,還是會關閉埠。 如需詳細資訊,請參閱 Using 陳述式

在此範例中,應用程式在撥打數據機之後,會中斷串行埠的連線。 實際上,您會想要從數據機來回傳輸數據。 如需詳細資訊,請參閱 如何:從序列埠接收字串

另請參閱