我写了一个局域网内对话的程序,用的TServerSock,TclientSocket这两个控件,想在客户端启动时就向服务器端发送该客户端的一些基本信息,但procedure TForm1.FormCreate(Sender: TObject);
begin
  memo1.Clear;
  clientsocket1.Socket.SendText('123');
end;服务器端收不到,请较大家该如何办?

解决方案 »

  1.   

    clientsocket1.Socket.SendText('123'); 这样发送就可以了吗?
    服务器端如何能够收到你这个程序中创建的clientsocket1对象的消息呢?肯定问题大大的
      

  2.   

    如果窗口启动了
    procedure TForm1.Button1Click(Sender: TObject);
    begin
    clientsocket1.Socket.SendText(edit1.Text);
    Edit1.Clear;
    end;用按键发的信息是可以收到的!服务器端接收没问题!
      

  3.   

    你放在form的actived事件中看看
      

  4.   

    都试了,都不行!难道我用的DELPHI有问题?
      

  5.   

    不会吧,
    在按钮事件里都可以,
    那在TForm1.FormShow事件里也应该可以呀!
    设置个断点调试一下,看有没有执行看看!
      

  6.   

    我还是把代码都贴出来吧,大家帮我看看有什么问题:program talkClinet;uses
      Forms,
      Client in 'Client.pas' {Form1};{$R *.res}begin
      Application.Initialize;  Application.CreateForm(TForm1, Form1);
      Application.Run;
    end.
    unit Client;interfaceuses
      Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
      Dialogs, ScktComp, StdCtrls;type
      TForm1 = class(TForm)
        Button1: TButton;
        Edit1: TEdit;
        ClientSocket1: TClientSocket;
        Memo1: TMemo;
        ListBox1: TListBox;
        procedure Button1Click(Sender: TObject);
        procedure ClientSocket1Read(Sender: TObject; Socket: TCustomWinSocket);
        procedure FormCreate(Sender: TObject);
      private
        { Private declarations }
      public
        { Public declarations }
        procedure init();
      end;var
      Form1: TForm1;implementation{$R *.dfm}procedure TForm1.Button1Click(Sender: TObject);
    begin
    clientsocket1.Socket.SendText(edit1.Text);
    Edit1.Clear;
    end;procedure TForm1.ClientSocket1Read(Sender: TObject;
      Socket: TCustomWinSocket);
    begin
    memo1.Lines.Add(socket.ReceiveText);
    end;procedure TForm1.FormCreate(Sender: TObject);
    begin
      memo1.Clear;
      form1.init();
    end;
    procedure Tform1.init();
    begin
       clientsocket1.Address:='192.168.0.21';
       clientsocket1.Port:=100;
       clientsocket1.Active:=True;
       clientsocket1.Socket.SendText('235');
    end;end.