为什么在ActiveForm中使用indy的控件无效?(200分)

  • 主题发起人 主题发起人 emitsong
  • 开始时间 开始时间
E

emitsong

Unregistered / Unconfirmed
GUEST, unregistred user!
在ActiveForm中使用indy的控件无效
如:使用udp时,端口可以创建,但是发送和接收数据没有工作。
同样的代码放到普通的程序中就可以运行,请大家帮忙。
 
把呆代貼出來
 
unit Unit1;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, IdBaseComponent, IdComponent,IdSocketHandle, IdUDPBase, IdUDPServer;

type
TForm1 = class(TForm)
Memo1: TMemo;
Button1: TButton;
IdUDPServer1: TIdUDPServer;
procedure Button1Click(Sender: TObject);
procedure IdUDPServer1UDPRead(Sender: TObject
AData: TStream;
ABinding: TIdSocketHandle);
private
{ Private declarations }
public
{ Public declarations }
end;

var
Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
var
s:string;
begin
s:='aaaaa';
IdUDPServer1.SendBuffer('127.0.0.1',9999,s[1],5);
end;

procedure TForm1.IdUDPServer1UDPRead(Sender: TObject
AData: TStream;
ABinding: TIdSocketHandle);
begin
memo1.Lines.Add('aaaa');
end;

end.
 
设置Indy控件的线程模式为True就行了
 
多人接受答案了。
 
后退
顶部