AT命令接收SMS使用C#

AT命令接收SMS使用C#,c#,visual-studio,serial-port,at-command,C#,Visual Studio,Serial Port,At Command,伙计们,我有调制解调器Wavecom Fasttrack Supreme,我想让程序立即接收短信,所以当我发送短信时,短信转到我的列表视图1 我有这样的代码 public ReciveEmail() { InitializeComponent(); getAvaliblePorts(); } private void button1_Click(object sender, EventArgs e) { baca_

伙计们,我有调制解调器Wavecom Fasttrack Supreme,我想让程序立即接收短信,所以当我发送短信时,短信转到我的列表视图1 我有这样的代码

public ReciveEmail()
    {
        InitializeComponent();
        getAvaliblePorts();
    }

    private void button1_Click(object sender, EventArgs e)
    {
        baca_sms();



    }

    private void baca_sms()
    {
        serialPort1.Parity = Parity.None;
        serialPort1.DataBits = 8;
        serialPort1.StopBits = StopBits.One;
        serialPort1.Handshake = Handshake.XOnXOff;

        serialPort1.DtrEnable = true;
        serialPort1.RtsEnable = true;
        serialPort1.NewLine = Environment.NewLine;

        serialPort1.Write("AT" + System.Environment.NewLine);
        Thread.Sleep(1000);

        serialPort1.WriteLine("AT+CMGF=1" + System.Environment.NewLine);
        Thread.Sleep(1000);
        serialPort1.WriteLine("AT+CMGL=\"ALL\"\r" + System.Environment.NewLine);
        Thread.Sleep(3000);

        MessageBox.Show(serialPort1.ReadExisting());

        Regex r = new Regex(@"\+CMGL: (\d+),""(.+)"",""(.+)"",(.*),""(.+)""\r\n(.+)\r\n");// own creation you must learn 
        Match m = r.Match(serialPort1.ReadExisting());

        while (m.Success)
        {
            //  ShortMessage msg = new ShortMessage();
            string a = m.Groups[1].Value;
            string b = m.Groups[2].Value;
            string c = m.Groups[3].Value;
            string d = m.Groups[4].Value;
            string ee = m.Groups[5].Value;
            string f = m.Groups[6].Value;


            // MessageBox.Show(f);

            ListViewItem item = new ListViewItem(new string[] { a, b, c, d, ee, f });
            listView1.Items.Add(item);
            m = m.NextMatch();

        }
    }

    public void getAvaliblePorts()
    {
        String[] ports = SerialPort.GetPortNames();
        comboBox1.Items.AddRange(ports);
    }

    private void btnOpen_Click(object sender, EventArgs e)
    {
        try
        {
            if (comboBox1.Text == "" || comboBox2.Text == "")
            {
                MessageBox.Show("Please Check your choice !!");
            }
            else
            {
                serialPort1.PortName = comboBox1.Text;
                serialPort1.BaudRate = Convert.ToInt32(comboBox2.Text);
                serialPort1.Open();

                progressBar1.Value = 100;
                btnClose.Enabled = true;
                btnRead.Enabled = true;
                btnOpen.Enabled = false;


            }
        }
        catch (UnauthorizedAccessException)
        {

            MessageBox.Show("UnauthorizedAccessException");
        }
    }

    private void btnClose_Click(object sender, EventArgs e)
    {
        serialPort1.Close();
        progressBar1.Value = 0;
        btnRead.Enabled = false;
        btnClose.Enabled = false;
        btnOpen.Enabled = true;

    }
当我点击按钮读取串口时,总是给我“OK”,为什么没有消息进入?我的命令有什么问题吗?还是什么?