我按照这篇文章发送SMS这是一个winform应用程序..我已将所有Dll引用到我的asp.net应用程序中.....
我使用aspx页面检测连接到PC的移动设备.....但它显示COM 'n' Port could not be opened
.....
using SMS;
using GsmComm.GsmCommunication;
using GsmComm.PduConverter;
public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
GsmCommMain comm = new GsmCommMain(6, 9600, 300);
comm.Open();
if (!comm.IsConnected())
{
Response.Write("No Phone Connected");
}
else
{
SmsSubmitPdu pdu = new SmsSubmitPdu("test", "+919999999999", "");
CommSetting.comm.SendMessage(pdu);
}
}
}
修改
我使用Visual Studio附带的Web开发服务器...如果转到Control Panel -> Phones & Modems -> Modems
我可以看到我的手机在com6中连接...
我已经测试了winform应用程序,它工作得很好......
这是答案吗?
ASP.NET页面应该可以工作。 这里发生的事情就是这样 当你点击open_com按钮时, ASP.NET页面发布回自身, 执行事件处理程序,即打开 港口。然后当页面完成 处理帖子,它是 卸载。此时COM1 对象也被破坏了。
答案 0 :(得分:2)
您使用的是哪个网络服务器?如果它是Visual Studio附带的Web开发服务器?然后它应该工作。如果您想使用IIS,则需要使用模拟或在具有管理员权限的不同安全上下文中运行ASP.net工作进程。
还要先尝试在控制台应用程序中测试样本。
答案 1 :(得分:0)
这很可能是权限。
除非您使用模拟,否则该网站将作为具有极低权限的ASPnet用户运行。将站点设置为模拟管理员用户,或将站点设置为以高权限用户身份运行。
或者,我的个人推荐,而是使用像http://www.clickatell.com/这样的在线服务来发送和接收短信。这更容易,它更便宜,而且更强大。