请教 C# 短信猫 循环发送 最好try-catch一下,感觉多半是环境的问题 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 你换别人机子的时候,查看短信猫的COM端口号了吗?这个端口号有时候会变。安装短线猫驱动的时候,把网断开。具体的这个我也说不清楚,但是以前弄得时候断网安装就好了。你先试试。将sms.dll放在system32下。如果是webservice发送短信,需要下载一个专门做web服务的sms.dll在网上找一下。具体链接也不记得了如果是CS程序,还不行,就去网上重新下载一个sms.dll。先试试吧。 C#编程中illustrator 11用于编程的dll文件,就是对矢量图编辑的类库,谁能提供个,网上没找到 端口连接是没有问题的,所有测试的机器都是可以连接的,代码:if (Sms_Connection(CopyRightStr, port,baud, out TypeStr, out CopyRightToCOM) == 1){ strWriteMsg("提示:设备连接成功 时间:" + DateTime.Now.ToString());//将信息写入TXT文件 OpenExc();//这个是我写的读取数据库的方法,将所有等待发送的短信息都保存到dtgv_Ready中}发送代码如下: for (int i = 0; i < dtgv_Ready.Rows.Count; i++) { if (!dtgv_Ready.Rows[i].IsNewRow) { if (Sms_Send(dtgv_Ready.Rows[i].Cells[1].Value.ToString().Trim(), dtgv_Ready.Rows[i].Cells[2].Value.ToString().Trim()) == 1) { string strDel = "DELETE FROM tbReadSend WHERE ID=" + dtgv_Ready.Rows[i].Cells[0].Value.ToString().Trim() + "";//发送成功后,删除待发 if (con.sqlOleComd(strDel) > 0) { string str = "INSERT INTO tbSend (tel,txt,dtime) VALUES ('" + dtgv_Ready.Rows[i].Cells[1].Value.ToString().Trim() + "','" + dtgv_Ready.Rows[i].Cells[2].Value.ToString().Trim() + "','" + DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss") + "')"; con.sqlOleComd(str);//将成功发送的短信存入另一张表 } } else { strWriteMsg("提示: 发送失败 !" + dtgv_Ready.Rows[i].Cells[1].Value.ToString().Trim() + " " + dtgv_Ready.Rows[i].Cells[2].Value.ToString().Trim() + " " + DateTime.Now.ToString()); } } } 在执行一条发送命令后,我用Thread.Sleep(10000);也尝试过了发不出的电脑上面,不管是否有延时还是发不出去而且我在一台新机器上面,只安装了.net4.0,连接没有问题,可还是发不出去,在我自己的电脑上面遇到过一次发不出,但是得待下一次的TIMER执行的时候,还是发出去了 能具体点吗?我也有这种感觉是环境造成的,但是代码里面就是一个循环你确认是走到Send()方法的时候就死了,那就在Send()方法哪儿设断点,看看变量的值有没有异常 终于又有人回帖了,非常感谢热心的朋友,在我自己的电脑上面没有问题,try.catch抓不到异常,而且我不可能在所有测试的电脑上面都装VS,确实是在send("手机号码","短信内容"),这一步的时候,要不然也不会提示“发送失败”,而且我还发现一个问题,短信的内容中有中文的逗号,发送不出去,后来我把逗号去掉,竟然有时候成功发送了,更多的还是发送不了 SMS.DLL中没有短信猫状态的判断,只有一个连接和未连接的判断。使用两个TIMER控件,一个用于发送,一个用于判断短信猫是在发送状态中,还是已经停止发送并且控制timer的时间间隔结贴,散分 实时监控TXT文件,TXT新增行导入数据库,怎么实现 winfrom中DataGridView导出Excel问题(0x800A03EC) 请教多维数组 该语句如何翻译 做一个c#项目怎么做啊? 求助各位高手:gdi+绘图,编写一个折线图控件(急) 如何在NET里同一页面里一同的按钮验证不同的TextBox ★★★★★ 请教一个XSD强类型的问题 【【100】】 ★★★★★ 问个调用宏传参数问题 pictureBox属性的问题 如何获取网络上远程要下载的文件准确大小 C# 转 VB 问题。
安装短线猫驱动的时候,把网断开。具体的这个我也说不清楚,但是以前弄得时候断网安装就好了。你先试试。将sms.dll放在system32下。
如果是webservice发送短信,需要下载一个专门做web服务的sms.dll在网上找一下。具体链接也不记得了
如果是CS程序,还不行,就去网上重新下载一个sms.dll。
先试试吧。
if (Sms_Connection(CopyRightStr, port,baud, out TypeStr, out CopyRightToCOM) == 1)
{
strWriteMsg("提示:设备连接成功 时间:" + DateTime.Now.ToString());//将信息写入TXT文件
OpenExc();//这个是我写的读取数据库的方法,将所有等待发送的短信息都保存到dtgv_Ready中
}
发送代码如下:
for (int i = 0; i < dtgv_Ready.Rows.Count; i++)
{
if (!dtgv_Ready.Rows[i].IsNewRow)
{
if (Sms_Send(dtgv_Ready.Rows[i].Cells[1].Value.ToString().Trim(), dtgv_Ready.Rows[i].Cells[2].Value.ToString().Trim()) == 1)
{
string strDel = "DELETE FROM tbReadSend WHERE ID=" + dtgv_Ready.Rows[i].Cells[0].Value.ToString().Trim() + "";//发送成功后,删除待发 if (con.sqlOleComd(strDel) > 0)
{
string str = "INSERT INTO tbSend (tel,txt,dtime) VALUES ('" + dtgv_Ready.Rows[i].Cells[1].Value.ToString().Trim() + "','" + dtgv_Ready.Rows[i].Cells[2].Value.ToString().Trim() + "','" + DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss") + "')";
con.sqlOleComd(str);//将成功发送的短信存入另一张表
}
}
else
{
strWriteMsg("提示: 发送失败 !" + dtgv_Ready.Rows[i].Cells[1].Value.ToString().Trim() + " " + dtgv_Ready.Rows[i].Cells[2].Value.ToString().Trim() + " " + DateTime.Now.ToString());
}
} }
发不出的电脑上面,不管是否有延时还是发不出去
而且我在一台新机器上面,只安装了.net4.0,连接没有问题,可还是发不出去,
在我自己的电脑上面遇到过一次发不出,但是得待下一次的TIMER执行的时候,还是发出去了
你确认是走到Send()方法的时候就死了,那就在Send()方法哪儿设断点,看看变量的值有没有异常
而且我不可能在所有测试的电脑上面都装VS,
确实是在send("手机号码","短信内容"),这一步的时候,要不然也不会提示“发送失败”,
而且我还发现一个问题,短信的内容中有中文的逗号,发送不出去,后来我把逗号去掉,竟然有时候成功发送了,更多的还是发送不了
使用两个TIMER控件,一个用于发送,一个用于判断短信猫是在发送状态中,还是已经停止发送
并且控制timer的时间间隔
结贴,散分