我正在使用 GSMComm 库和 Wavecom 调制解调器来创建简单的 SMS 发送程序程序,当我按下 winform 中的“发送”按钮时,我的 VS2010 中会出现一条消息调试。
电话报告未指定的错误。当设备不支持命令、命令对于当前状态无效或参数不正确时,通常会发生这种情况。
这是我的代码
private void btnSend_Click(object sender, EventArgs e)
{
var port = "COM3"; // default port to connect modem wavecom
var baudRate = 115200;
var timeout = 300;
var comm = new GsmCommMain(port, baudRate, timeout);
try
{
var msg = txtIsiPesan.Text;
var phoneNumber = txtNoTujuan.Text;
comm.Open();
SmsSubmitPdu pdu = new SmsSubmitPdu(msg, phoneNumber, "");
comm.SendMessage(pdu); //debug found error here
comm.Close();
}
catch (Exception ex)
{
MessageBox.Show(ex.Message, "error");
}
}
这是否表明我的wavecom调制解调器不支持SmsSubmitPdu? 请推荐我,谢谢。
最佳答案
我终于找到了解决办法。
SmsSubmitPdu pdu = new SmsSubmitPdu(msg, phoneNumber, "");
第三个参数应该是服务中心号码,因为我使用的是 GrameenPhone,它是 +8801700000600
所以我尝试了
SmsSubmitPdu pdu = new SmsSubmitPdu(msg, phoneNumber, "+8801700000600");
并成功发送短信。顺便说一下,请确保您的 com 端口正确,因为我的是 COM5。
var port = "COM5"; // default port to connect modem wavecom
var baudRate = 115200;
var timeout = 300;
var comm = new GsmCommMain(port, baudRate, timeout);
try
{
var msg = "TESTING";
var phoneNumber = "+8801719461643";
comm.Open();
SmsSubmitPdu pdu = new SmsSubmitPdu(msg, phoneNumber, "+8801700000600");
comm.SendMessage(pdu); //debug found error here
comm.Close();
}
catch (Exception ex)
{
MessageBox.Show(ex.Message, "error");
}
关于c# - 设备 Wavecom 调制解调器不支持 SmsSubmitPdu GSMComm 命令,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28910230/