Engin0 / gsmmodem

Automatically exported from code.google.com/p/gsmmodem
0 stars 0 forks source link

多条短信发送时,pe.UserData只能获取最后一次的内容,循环体中前几次的UserData获取不到 #9

Open GoogleCodeExporter opened 9 years ago

GoogleCodeExporter commented 9 years ago
PDUEncoding pe = new PDUEncoding();
            pe.ServiceCenterAddress = "8613800311500";
            string tmp = string.Empty;
foreach (CodedMessage cm in pe.PDUEncoder(phone, msg))
{
   string a=cm.PduCode;
   string b=pe.UserData;//多条短信发送时,pe.UserData只能获取最后一次的内容,循环体中前几次的UserData获取不到
}

Original issue reported on code.google.com by duhongyu...@gmail.com on 17 Sep 2011 at 2:15

GoogleCodeExporter commented 9 years ago
恩,是这样,我的程序PDUEncoder运行过程中,把UserData属性更��
�,每个PDU串的编码都进行了更改,所以程序运行结束后,User
Data保存的是最后一次的结果。
foreach (CodedMessage cm in pe.PDUEncoder(phone, 
msg))运行时,首先运行完pe.PDUEncoder(phone, 
msg))这个函数,UserData只能保存最后一条的内容。
如果需要的话,可以把UserData保存到CodedMessage类的对象中。
你再回复下,确认是否需要这个功能,如果需要,我可以在��
�版本中添加。
你可以回复,让我知道是否真的需要此功能,谢啦

Original comment by xiaoa0...@gmail.com on 21 Sep 2011 at 1:16

GoogleCodeExporter commented 9 years ago
需要,谢谢。
因为我想把console口执行的每条命令和命令的解析都放到数据�
��中
如:

原内容                                                               解析
AT+CMGS=62                                                 
初始化信息长度:62
0891683108301105F011000BA15109233552F50008C40460A8597D     
向15903253255发送“您好”

以上是一条短信的,如果是多条短信的话,内容部分势必被��
�分,如此每次解析的内容是不一样的,如:前67字符为一个��
�容,后面为一个内容。麻烦您有时间考虑一下这个需求。

还有两个问题向您请教一下: 
①UserData = Text.Substring(i * 67, 
67)中为什么是接取67个字符,而不是70个
②DecodedMessage.cs的构造函数是这样的:
 public DecodedMessage(string serviceCenterAddress, string sendTime, string phoneNumber, string smsContent)
            : this("010100", serviceCenterAddress, sendTime, phoneNumber, smsContent)
        { }
请问中间那个冒号是干什么的?大括号里面为什么都没东西��
�。您别笑话我。我是菜鸟。

Original comment by duhongyu...@gmail.com on 22 Sep 2011 at 2:19

GoogleCodeExporter commented 9 years ago
长短信发送的时候,需要头部占用一部分内容,只能每条67个
汉字。
冒号是调用另外一个构造函数,这样可以节省代码量,同时��
�少代码重复;大括号里面是调用上面冒号后的之后所需的另�
��处理,这里不需要,所以没有。

Original comment by xiaoa0...@gmail.com on 22 Sep 2011 at 6:47