问题描述
我在用c#开发一个收发短信的程序,需要与串口短信猫通信,于是我就采用了mscomm32.ocx控件,注册引用一切正常,代码可以通过编译,生成的程序运行也很正常,没有任何错误提示,但是运行时却总是没有结果,我设置断点调试了一下,结果发现出现了一个很奇怪的问题,实在无法理解,各位谁有这方面的经验,帮助一下啊,在线等ing……下面是出现问题的代码:部分代码:…………stringBuffer="";stringbufy="AT+CSCA?r";inti=0;while(i<10){this.com.Output=bufy;//就是这行代码出错,但是没有任何提示错误提示:异常来自HRESULT:0x800A018A(CTL_GETNOTSUPPORTED)Thread.Sleep(300);Buffer=Buffer+this.com.Input;Thread.Sleep(300);if(Buffer.IndexOf("86")!=-1){break;}i++;}…………
解决方案
解决方案二:
权限问题??
解决方案三:
我查了一下错误的意思是不能访问只写属性但是我程序中并没有读取output实行的值啊1搂的你说的权限是指什么的权限啊?
解决方案四:
c#有自带的串口控件:serialport
解决方案五:
赶快解决吧
解决方案六:
碰到同样问题,请问楼主解决了没有。
解决方案七:
this.com.Output=bufy;你检查一下,在你的这句之间,是否正常打开了COM口呢?
解决方案八:
这是原来用BCB写的调用短信猫的发送短信程序,希望对你有用boolTCCService::SendShortMessage(StringTelephone,StringText){boolResult=false;AppLog.Add(fsLog::logINFO,"准备发送短信,手机号("+Telephone+")内容:"+Text);charszNextMsg[80];//测试版限制发送内容<=80字节charszMsg[80];charszSCA[30];charszPhNbr[30];charerr[30];strcpy(szSCA,CommInfo.szSCA);strcpy(szMsg,Text.c_str());strcpy(szPhNbr,Telephone.c_str());if(bSendMsg(hPort,szMsg,szPhNbr,szSCA,szNextMsg,iSMS_F,err)){AppLog.Add(fsLog::logINFO,"发送一条短信成功,手机号("+Telephone+")内容:"+Text);Result=true;}else{AppLog.Add(fsLog::logINFO,"发送一条短信失败,手机号("+Telephone+")内容:"+Text);}returnResult;}
解决方案九:
不要用string,使用byte【】试试