C# 在C中通过GSM调制解调器接收SMS#
我正在从事一个项目,在这个项目中,我必须使用AT命令通过C#中的GSM调制解调器发送和接收短信。我已完成发送部分,但无法从sim卡读取短信。 我尝试了以下代码并得到以下响应: 好的 好啊 错误。 阅读短信的代码是:-`C# 在C中通过GSM调制解调器接收SMS#,c#,serial-port,sms,at-command,sms-gateway,C#,Serial Port,Sms,At Command,Sms Gateway,我正在从事一个项目,在这个项目中,我必须使用AT命令通过C#中的GSM调制解调器发送和接收短信。我已完成发送部分,但无法从sim卡读取短信。 我尝试了以下代码并得到以下响应: 好的 好啊 错误。 阅读短信的代码是:-` public bool ReadSms() { //string buffer = string.Empty; if (this.serialPort.IsOpen == true) {
public bool ReadSms()
{
//string buffer = string.Empty;
if (this.serialPort.IsOpen == true)
{
try
{
this.serialPort.WriteLine("AT");
Thread.Sleep(2000);
this.serialPort.WriteLine("AT+CMGF=1" + (char)(13));
Thread.Sleep(3000);
this.serialPort.WriteLine("AT + CMGL = ALL" + (char)(26));
Thread.Sleep(5000);
string a = this.serialPort.ReadExisting();
MessageBox.Show(a);
}
catch (Exception ex)
{
MessageBox.Show(ex.Source);
}
return true;
}
else
return false;
}
public void Opens()
{
if(this.serialPort.IsOpen == false)
{
this.serialPort.Open();
}
}
public void Closes()
{
if (this.serialPort.IsOpen == true)
{
this.serialPort.Close();
}
}
`替换此行“this.serialPort.WriteLine”(“AT+CMGL=ALL”+(char)(26))
对于这个,this.serialPort.WriteLine(“AT+CMGL=\“ALL\”+(char)(13))
我希望您不会出现错误。更换线路
this.serialPort.WriteLine("AT");
与
并将26
更改为13
this.serialPort.WriteLine("AT" + (char)(13));