我用spcomm控制来做手机短信的发送程序,请问这代码错在哪了? ( 积分: 100 )

  • 主题发起人 主题发起人 doby_li
  • 开始时间 开始时间
D

doby_li

Unregistered / Unconfirmed
GUEST, unregistred user!
我用at先做个简单的测试为何也不行:
procedure Tsmsfrm.Button1Click(Sender: TObject);
var
sat:string;
begin
try
Comm1.BaudRate:=9600;
Comm1.ByteSize:=8;
Comm1.ParityCheck:=1;
Comm1.CommName:='com1';
Comm1.startcomm;
except
messagedlg('打开串口时失败,可能该串口已被占用或不存在,请换另一个串口!',mterror,[mbyes],0);
end;

sat:='at'+Char(13)+Char(10);
if Comm1.WriteCommData(Pchar(sat),Length(sat)) then
showmessage('发送指令成功')
else
messagedlg('发送指令失败!',mterror,[mbyes],0);
end;

错误提示是:发送指令失败.
我用的是spcomm控件,请问应该如何写发送最简单的at这个指令的程序.
请高手看一下,我的这个发送程序错在哪了,谢谢.
 
我觉得首先使用通讯测试软件测试,网上很多串口通讯测试软件。你测试成功了,再调试你的代码。
 
我用超级终端测试都成功了的,现在就是用代码来写,总是不能成功
请高手们指点一下呀。
 
procedure TForm1.Button1Click(Sender: TObject);
var
sat:string;
begin
try
Comm1.BaudRate:=9600;
Comm1.ByteSize:=_8;
//Comm1.ParityCheck:=None;
Comm1.CommName:='com1';
Comm1.startcomm;
except
messagedlg('打开串口时失败,可能该串口已被占用或不存在,请换另一个串口!',mterror,[mbyes],0);
end;

sat:='at'+Char(13)+Char(10);
if Comm1.WriteCommData(Pchar(sat),Length(sat)) then
showmessage('发送指令成功')
else
messagedlg('发送指令失败!',mterror,[mbyes],0);
end;
发送成功
 
多人接受答案了。
 
后退
顶部