Windows应用程序从RJ11端口读取来电号码

时间:2016-05-30 11:53:22

标签: c# serial-port windows-applications

我需要创建一个Windows应用程序来读取COMX的来电号码,以下是我的代码:

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()”方法的整个字符串,是除了拆分字符串之外还有其他方法吗?如果没有传入的字符串是什么样的?

请告知。

1 个答案:

答案 0 :(得分:0)

我终于买了一个与串口通信的来电显示产品,并提供如下的来电号码:R99999999E和我做了相应的代码修改以读取号码,一切都按预期工作。

注意:TRENDnet调制解调器" TFM-561u"不支持来电显示,实际上他们的支持回复我说TRENDNet没有支持来电显示的产品。