发送其它的都可以.
下面不行:
at+cmgs=int<cr>
>your pduhere +#$1a,
然后总收不到正确返回,总返回error
上面的编码是不存在错误的,我同样用comport发出去都可以,但comport操作时隙不太理解.这样也不行:
at+cmgw=int<cr>
>pduhere+#$1a
这样写到sm卡内没问题.然后呢,用at+cmss=retId<cr>,总收不到Ok,真郁闷呀.http://www.2ccc.com/article.asp?articleid=2371 这里有原文,也不知道在这里可不可以碰到agamem?------------
再问一个搭车的问题,我想用delphi开发具有浏览器一样的程序介面,不知道有没有现成的控件?
相关请见 http://blog.csdn.net/cathyeagle/archive/2004/08/09/69607.aspx,期待cathyeagle光临!

解决方案 »

  1.   

    我用SPCOMM开发的,没有问题呀
    9600波特率的
      

  2.   

    真不知道是什么问题,我多次测试还是有问题.
    我在家里使用硬件控制,就可以发.(搞得我昨天晚上兴奋了很久)然后我换单位上的电脑,2003,同样是一个程序,就发不了,然后,要把流控制改成dtrcontrol ->enable,把rtscontrol改成 shakehand,就可以发,然后呢,at+cmss命令就返回error,风采依旧!至于连接速度,我的一个手机修改软件,做测试,我的连接速度是19200,没问题的.
      

  3.   

    Q 我在超级终端上,用at+cmgs发送短消息,格式好像没有错误,但总返回"ERROR"。我输入的就象这样:at+cmgs=30
    > 0891683108100005F011000D91683118405057F000000006C8329BFD0E01   请问是什么原因?  A "at+cmgs"指令很特殊,回车后还需要输入数据。此处是"CR",不是"CRLF",注意在超级终端里直接回车是不是生成了两个字符(查看设置)。象"at+cmgl"指令,即使最后输入"CRLF"也是不要紧的。   你的问题出在长度上。长度不是随便写的,你的例子中,长度应为21。除去SMSC段(0891683108100005F0),从"11"开始算(即"11000D91683118405057F000000006C8329BFD0E01"),除以2即得。   正确的写法应该是 at+cmgs=21
    > 0891683108100005F011000D91683118405057F000000006C8329BFD0E01 
    (">"是手机提示,不是输入的)
      

  4.   

    和上上面的回答刚好相反,这个我都测试过了的.
    发送crlf没关系的,我也是用超级终端做的测试.
    而且at+cmgs=21,这个数字即使错了也没关系.>,这个当然是要等手机返回来了.
      

  5.   

    网上有的SPCOMM版本有问题,我也遇到过。同样的代码连手机没有问题,连短信猫就出错
      

  6.   

    算了,兄弟们结了.
    我用od跟踪了一下别人的程序,重写了setcommstate参数,可以了,知道的也不会给答案,不知道的就算我教大家了,还要给分,只能是谢谢大家的热心参与.人在江湖漂,哪有不挨刀.