Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/314.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 通过C语言使用AT命令发送短信#_C#_Sms - Fatal编程技术网

C# 通过C语言使用AT命令发送短信#

C# 通过C语言使用AT命令发送短信#,c#,sms,C#,Sms,我已经用C#编写了短信应用程序。我的问题是:我想向多个用户发送短信。但是,它发送给一个用户。怎么了 这是我的密码: public void openPort() { port.Close(); port.PortName = "COM11"; port.ReceivedBytesThreshold = 1; port.BaudRate = 115200; port.DtrEnable = true;

我已经用C#编写了短信应用程序。我的问题是:我想向多个用户发送短信。但是,它发送给一个用户。怎么了

这是我的密码:

public void openPort()
    {
        port.Close();
        port.PortName = "COM11";
        port.ReceivedBytesThreshold = 1;
        port.BaudRate = 115200;
        port.DtrEnable = true;
        port.Open();
     }
  public void sendSMS(string mmobil)
  {
       this.mobil = mmobil;
       port.WriteLine("AT\r");
        port.WriteLine("AT+CMGF=1\r");
        port.WriteLine("AT+CMGS=\"" + mmobil + "\"\r");
        port.WriteLine("TEST" + '\x001a');
  }

  static void Main(string[] args)
    {


 List <string>mymobil= new List<string>();
        mymobil.Add("+316207XXX");
        mymobil.Add("+316141XXX");

 foreach (string mobil in mymobil)
       {

           openPort();
           sendSMS(mobil);
       }
    } 
public void openPort()
{
port.Close();
port.PortName=“COM11”;
port.ReceivedBytesThreshold=1;
波特率=115200;
port.DtrEnable=true;
port.Open();
}
公共void sendSMS(字符串mmobil)
{
this.mobil=mmobil;
端口写入线(“AT\r”);
port.WriteLine(“AT+CMGF=1\r”);
port.WriteLine(“AT+CMGS=\”“+mmobil+”\“\r”);
port.WriteLine(“测试“+”\x001a”);
}
静态void Main(字符串[]参数)
{
List mymobil=新列表();
mymobil.加上(“+316207XXX”);
mymobil.加上(“+316141XXX”);
foreach(mymobil中的字符串mobil)
{
openPort();
sendSMS(mobil);
}
} 

我建议您先阅读设备用户手册,我认为在您发送第一条短信后应该会有一个延迟,可能设备会返回一些您必须阅读的内容以清除缓冲区,然后再次发送。这完全取决于您使用的设备。

如果您使用的是第三方SMPP提供商,那么您必须要求他们允许发送多个用户,否则使用“;”每个号码


谢谢

我想你没有在短信后发送所需的转义字符。您应该发送ASCII字符ESC,十进制为27,十六进制为1B。

我认为所有提供商都允许用户发送多条短信,更可能是在您的手机中选择多个联系人向他们发送短信。