for i:=1 to 9 do
begin
s:=pchar(label3.Caption);
if opencom(1,9600)=1 then
begin
if (senddata(s,length(label3.Caption))=0) then
begin
Memo1.Text:=label3.Caption+' '+'写卡失败';
APPLICATION.ProcessMessages;
sleep(1500);
closecom(); end ; if (senddata(s,length(label3.Caption))=1) then
begin
Memo1.Text:=label3.Caption+' '+'写卡成功';
label3.caption:=inttostr(strtoint(label3.caption)+1);
APPLICATION.ProcessMessages;
sleep(1500);
closecom();
end;
end;
end; 在第一次循环中第3个if(senddata(s,length(label3.Caption))=1) 里的条件要满足2次,里面的语句才能执行。问题出在哪里呢???
begin
s:=pchar(label3.Caption);
if opencom(1,9600)=1 then
begin
if (senddata(s,length(label3.Caption))=0) then
begin
Memo1.Text:=label3.Caption+' '+'写卡失败';
APPLICATION.ProcessMessages;
sleep(1500);
closecom(); end ; if (senddata(s,length(label3.Caption))=1) then
begin
Memo1.Text:=label3.Caption+' '+'写卡成功';
label3.caption:=inttostr(strtoint(label3.caption)+1);
APPLICATION.ProcessMessages;
sleep(1500);
closecom();
end;
end;
end; 在第一次循环中第3个if(senddata(s,length(label3.Caption))=1) 里的条件要满足2次,里面的语句才能执行。问题出在哪里呢???
解决方案 »
- 用Database desktop 创建数据库的问题???
- 关于BHO(Browes Helper Object)
- 怎么把值写到Tvaluelisteditor的第n行的value列里面啊?
- ? 我在DELPHI5中用标准的API方法在窗体上进行绘图,VC6下同样的API代码运行速度竟比DELPHI5快一倍,请那位高手解释一下为什么会这样?
- 有没有长沙的朋友啊?能否帮忙介绍个要人的地方呀?(求斑竹别删,下不为例:))
- isapi 的dll在98 下可以操作注册表,为何在win2000下就不行呢?
- 问一下得到当前用户登陆的域,和用户名,的API是那个啊?
- FMX问题实在没办法了,特来求救
- 请问Delphi 5.0 试用版的注册码是什么?(我是从新浪下载的!)
- Linux下的Delphi什么时候出啊?
- 100求助一个常规的问题,windowsxp系统下的RPC服务器不可用
- vc做的dll返回值是char* ,delphi调用后内存泄漏
1.有必要每次都执行打开串的操作么?(对于同一个串口)
2.为什么不把发送过程定义成一个函数?
3.从你的操作来看,我不明白你为什么要发送9次同样的数据给设备;一般,我是按下面的操作顺序完成通讯的
var
rlt:boolean;
trycount:byte;trycount:=1;
rlt:=false;
rtl:=openCOmm();
if rlt then
while trycount<3 do
begin
rlt:=sendData();
if rlt then
begin
//.....发送成功 !
trycount:=4;
end
else
inc(trycount);
end;
closeCOmm;