如何在程序中發短信息給手機(200分)

  • 主题发起人 主题发起人 netup
  • 开始时间 开始时间
N

netup

Unregistered / Unconfirmed
GUEST, unregistred user!
如何在程序中發短信息給手機?????
1.有移動或聯通或是其它SP
2.如何取得他們的服務?如服務的api
3.這樣子的程式發送短息時是不扣使用者的money????
 
我也关注这个问题,还有随便问一下在什么地方申请这种服务?
 
现在不是有短信平台啊
 
必须是移動或聯通或是其它SP才有可能有权限
 
用电信的短信平台
 
这样不是很麻烦吗?用一个Modem不就什么都搞定了,用AT指令就可以了
 
需要使用平台的 程序里只能通过调用网址等方法来实现发短信
我现在就在写一个发短信的东西 代码如下
/////////////////////////////////////////////////////////////////////
procedure sendmessage(num:string;str:string);
var
a:string;
text1:string; //消息发送控制字符
IEApp: Variant;
begin
a:=Copy(num,1,3);
IEApp := CreateOLEObject('InternetExplorer.Application');
IEApp.visible := false;
IEApp.Top := 0;
IEApp.Left := 0;
IEApp.width := screen.width;
IEApp.height := screen.height;

////联通手机
if (a='130') or (a='131') or (a='132') or (a='133') then
begin
text1:='http://211.157.2.2:8081/aircomsms/sendsms.jsp?srcmbl=99808484&destmbl=';
text1:=text1+num+'&feembl=';
text1:=text1+num+'&msgfmt=15&msg='+str+'&msglevel=1&type=02&incode=069000&uid='隐藏'&pwd='隐藏'&ip=';
IEApp.Navigate(text1);
frm_main.Label4.Font.Color:=clblue;
frm_main.label4.Caption:='消息已经成功发送! ';
end;
//移动手机
if (a='135') or (a='136') or (a='137') or (a='138') or (a='139') then
begin
text1:='http://211.157.2.2:8081/aircomsms/sendsms.jsp?srcmbl=80008484&destmbl=';
text1:=text1+num+'&feembl=';
text1:=text1+num+'&msgfmt=15&msg='+str+'&msglevel=1&type=02&incode=069000&uid='隐藏'&pwd='隐藏'&ip=';
// sleep(3000);
IEApp.Navigate(text1);
sleep(1000); //等待1秒后才能正常发送短信 ???为什么
frm_main.label4.Font.Color:=clblue;
frm_main.label4.Caption:='消息已经成功发送! ';
end;
end;


可是不明白为什么必须sleep一下才能成功发送
我已经发了个帖子 谁要是有答案去那里领分~
 
hs-kill的方法我试过,提示'消息已经成功发送! '但不知为什么信息并没有发出去?能说明一下吗?谢谢
 
有没有这方面的高手指点一下
 
我来指点你了...[:D] 开个玩笑,没那么大肆的......
短信发送有三种方法:
1 : 用串口控制手机或是类似的发送设备来发送,不过这种方法不是一两句就可以将清楚的.(其实是我也不熟...[:D])
2 : 通过SP的短信网关,这个就是我熟的了(做个一个这种项目),这个其实就是个SOCKET,你在SOCKET中按它的协议来发送相应命令给网关就可以了,从网关发过来的也是接到消息就收就是.但这个要求你对SOCKET熟.(至于协议,到联通或移动网站上去下就是)
3 : 就是hs-kill的方法了,他这个其实是在一个能够发送短信的网页上用程序来代替手工填写一些信息再提交就是.你按他的代码稍稍专研下就可以了.
 
后退
顶部