var
Form1: TForm1;
viewstring :string;
i:integer;
rbuf,sbuf:array[1..6] of byte;
implementation{$R *.dfm}procedure TForm1.Button2Click(Sender: TObject);
var
str:Pchar;
count:integer;
begin
str:=pchar(edit3.Text);
count:=length(str);
if self.Comm1.WriteCommData(str,count) then
else
raise exception.Create('发送错误');
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
self.Comm1.StartComm;end;procedure TForm1.Comm1ReceiveData(Sender: TObject; Buffer: Pointer;
BufferLength: Word);
var
i :integer;
begin
viewstring :='';
move(buffer^,pchar(@rbuf)^,bufferlength);
for i :=0 to bufferlength do
viewstring :=viewstring+inttohex(rbuf[i],2)+'';
viewstring :='接收'+viewstring;
showmessage('1');//这句根本没执行
memo1.Lines.Add(viewstring);
memo1.Lines.Add('');
showmessage('2');
end;end.我发送edit3.txt ,用memo1接收回来!为什么不能啊!请高手帮个忙看一下
Form1: TForm1;
viewstring :string;
i:integer;
rbuf,sbuf:array[1..6] of byte;
implementation{$R *.dfm}procedure TForm1.Button2Click(Sender: TObject);
var
str:Pchar;
count:integer;
begin
str:=pchar(edit3.Text);
count:=length(str);
if self.Comm1.WriteCommData(str,count) then
else
raise exception.Create('发送错误');
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
self.Comm1.StartComm;end;procedure TForm1.Comm1ReceiveData(Sender: TObject; Buffer: Pointer;
BufferLength: Word);
var
i :integer;
begin
viewstring :='';
move(buffer^,pchar(@rbuf)^,bufferlength);
for i :=0 to bufferlength do
viewstring :=viewstring+inttohex(rbuf[i],2)+'';
viewstring :='接收'+viewstring;
showmessage('1');//这句根本没执行
memo1.Lines.Add(viewstring);
memo1.Lines.Add('');
showmessage('2');
end;end.我发送edit3.txt ,用memo1接收回来!为什么不能啊!请高手帮个忙看一下
解决方案 »
- 求助。。刚学习delphi 求一个dbgrid数据导出HTML文件的例子。要求HTML格式与excel格式一样!
- 如何生成可执行程序,让可执行程序脱离DELPH环境运行需要哪些文件
- fastreport 的MasterData事件OnBeforePrint是否可以强制分页??
- keybd_event遇到的奇怪的问题
- 为什么TQuery中进行联合(UNION)查询得出的结果集好象不对
- 一个释放文件操作句柄的问题
- 装QRDESIGN 报错,望哪为好心大虾点拨小第。
- 我想在Button1Click中,获取在点击事伯触发时,是否按下CTRL,SHIFT,ALT?
- 在线等,访问系统时间,用什么类型???
- 鼠标的指向问题!
- 开发部考核制度
- BDE转ADO的属性函数(createparam和removeparam)???加急
begin
self.Comm1.CommName:=edit1.Text;
self.Comm1.BaudRate:=strtoint(edit2.Text);
self.Comm1.ByteSize:=Tbytesize(3);
self.Comm1.StopBits:=Tstopbits(0);
self.Comm1.Parity:=tparity(0);
try
self.Comm1.StartComm;
except
raise exception.Create('打开串口失败!');
end; self.StatusBar1.Panels[0].Text:=edit1.text+'已打开';
self.StatusBar1.Refresh;
end;procedure TForm1.Button3Click(Sender: TObject);
begin
self.Comm1.StopComm;
self.StatusBar1.Panels[0].Text:=edit1.text+'已关闭';
self.StatusBar1.Refresh;
end;procedure TForm1.Button2Click(Sender: TObject);
var
str:Pchar;
count:integer;
begin
str:=pchar(edit3.Text);
count:=length(str);
if self.Comm1.WriteCommData(str,count) then
self.Memo1.Lines.Add('已发送'+inttostr(count)+'个字符')
else
raise exception.Create('发送错误');
end;procedure TForm1.Button4Click(Sender: TObject);
begin
close;
end;procedure TForm1.Comm1ReceiveData(Sender: TObject; Buffer: Pointer;
BufferLength: Word);
var
str:string;
strrecv:string;
begin
setlength(strrecv,bufferlength);
move(buffer^,Pchar(strrecv)^,bufferLength);
self.Memo2.Lines.Add('已收到:'+inttostr(bufferlength)+'字节的数据');
self.Memo2.Lines.Add(strrecv);
end;