本人想学习delphi UDP通讯。所以想弄点能用的demo研究一下。 最好有现成的组件。或者很方便就能添加的。我是XP的系统delphi7 。有的直接发我邮箱 [email protected] 。非常感谢。

解决方案 »

  1.   

    DELPHI  INDY目录有DEMO
    API的看MSDN就行了, MSDN都有例子,直接拿来就能跑。 
      

  2.   

    我delphi7  demo indy 文件夹里没有例子。只有个txt文件。
      

  3.   

    要不大家随便指导点东西。我好学习。今天看下来。发现 indyudp  client不能接收数据。
      

  4.   

    放两个控件
    TIdUDPServer,TIdUDPClient
    unit Unit1;interfaceuses
      Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
      Dialogs, IdUDPClient, IdBaseComponent, IdComponent, IdUDPBase,
      IdUDPServer, StdCtrls,IdSocketHandle;type
      TForm1 = class(TForm)
        Button1: TButton;
        IdUDPServer1: TIdUDPServer;
        IdUDPClient1: TIdUDPClient;
        Memo1: TMemo;
        procedure FormCreate(Sender: TObject);
        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.FormCreate(Sender: TObject);
    begin
    self.IdUDPServer1.DefaultPort:=1984;
    self.IdUDPServer1.Active:= true;
    end;procedure TForm1.Button1Click(Sender: TObject);
    begin
    self.IdUDPClient1.Send('127.0.0.1',1984,'fdsafdsa');
    end;procedure TForm1.IdUDPServer1UDPRead(Sender: TObject; AData: TStream;
      ABinding: TIdSocketHandle);
    var
      sStream: TStringStream;
    begin
      sStream:= TStringStream.Create('');
      try
      sStream.CopyFrom(AData,AData.Size);
      Memo1.Lines.Add(sStream.DataString);
      finally
      sStream.Free;
      end;
    end;end.
      

  5.   

    IdUDPClient1.ReceiveBuffer(...)  可以接收数据
      

  6.   

    用windows自带的winsock控件就可以实现UDP的通讯