First, download and install the Microsoft® SOAP Toolkit Version 2.0 from: http://msdn.microsoft.com/downloads/default.asp?URL=/code/sample.asp?url=/msdn-files/027/001/580/msdncompositedoc.xml
uses
ComObj;
procedure TForm1.Button1Click(Sender: TObject);
var
SoapClient: OleVariant;
v: OleVariant;
begin
SoapClient := CreateOleObject('MSSOAP.SoapClient');
SoapClient.mssoapinit('http://sal006.salnetwork.com:83/lucin/smsmessaging/process.xml');
SoapClient.SendTextMessage('Number', 'MessageBody', 'Sender');
end;
Private Sub SMSend(TxtNumber As String, TxtMessage As String) 'txtNumber 是目的号码 txtMessage 是信息内容
Dim TxtMsg As String
Dim Arr, ArrA, ArrB As String
Dim InChar, InCharB, Wait As String
Dim i As Single
MSComm.InBufferCount = 0
For i = 1 To Len(TxtMessage)
Arr = Mid(TxtMessage, i, 1)
ArrA = Hex(AscB(MidB(Arr, 1, 1)))
ArrB = Hex(AscB(MidB(Arr, 2, 1)))
If Len(ArrB) = 1 Then If Val(ArrB) = 0 Then ArrB = "00"
If Len(ArrA) = 1 Then ArrA = "0" + ArrA
TxtMsg = TxtMsg + ArrB + ArrA
Next i
If MSComm.PortOpen Then MSComm.Output = "AT+CMGS=" + Chr(34) + TxtNumber + Chr(34) + Chr(13) '送出短信目的号码
MSComm.Output = TxtMsg + "005B5F2052519510005D" + Chr(26) '送出已编码后的短信内容
EndIf
Wait = Waiting(Chr(26), 1)
If ErrorCode Then
'初始化错
Status.SimpleText = "未准备好!" + "错误"
MFlag = False '标记发送失败
Else
Status.SimpleText = "发送成功!"
MSComm.RThreshold = 1 '控件收到数据时将触发OnComm事件
MFlag = True
End If
End Sub
Private Function Waiting(Strings As String, WaitTime As Single) As String
Dim EndTime As Single
Dim Buffer As String