2016-05-30 84 views
0

我需要創建一個讀取COMX來電號碼的Windows應用程序,以下是我的代碼有:Windows應用程序從RJ11端口讀取來電號碼

public partial class frmMain : Form 
{ 

    public frmMain() 
    { 
     InitializeComponent(); 
     if (!serialPort1.IsOpen) 
     { 
      try 
      { 
       serialPort1.Open(); 
      } 
      catch (System.Exception ex) 
      { 
       MessageBox.Show(ex.ToString()); 
      } 
     } 
    } 

delegate void OutputUpdateDelegate(string data); 
private void OutputUpdateCallback(string data) 
{ 
    txtReceive.Text += data; 
} 




    private void DataRec(object sender, System.IO.Ports.SerialDataReceivedEventArgs e) 
    { 
     try 
     { 
      string data = serialPort1.ReadExisting(); 
      txtReceive.Invoke(new OutputUpdateDelegate(OutputUpdateCallback),data);     
     } 
     catch (System.Exception ex) 
     { 
      MessageBox.Show(ex.ToString()); 
     } 
    }  

} 

,因爲我不有一個調制解調器測試,我需要知道如何創建一個假的測試呼叫,以及如何只讀取電話號碼,而不是讀取來自「ReadExisting()」方法的整個字符串,除了拆分字符串還有其他方法?如果沒有傳入的字符串是什麼樣子?

請指教。

+0

獲取調制解調器的編程手冊以獲取響應樣本。您的RJ11電纜是否在您的計算機中使用9/25針連接器,USB或以太網連接?測試代碼的消息部分的簡單方法是與客戶端和服務器建立虛擬的TCP連接。服務器將模擬調制解調器和客戶端您的PC發送消息。 – jdweng

+0

謝謝@jdweng謝謝你的提示,我搜索虛擬TCP連接,我找到一種方法來測試超級終端,但我不能做一個假的電話(例如輸入一個數字+999999999)所有的東西我能夠在終端上寫下代碼,並在代碼中獲取價值。至於回答你的問題我打算使用的調制解調器有使用9/25針連接器的RJ11端口。 –

+0

@jdweng,對不起,我打算使用的調制解調器有RJ11端口,而不是上面提到的任何一種。 –

回答

0

我終於買了一個與串口通信的主叫號碼產品,並提供了以下呼叫者號碼:R99999999E和我做了相應的代碼修改以讀取號碼,並且所有事情都按預期工作。

注意:TRENDnet調制解調器「TFM-561u」不支持來電顯示,實際上他們的支持回覆我說TRENDNet沒有支持來電顯示的產品。

相關問題