首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

在delphi中编写Client-Server应用程序

在Delphi中编写Client-Server应用程序,通常需要使用TCP/IP协议进行通信。以下是一个简单的示例,展示了如何在Delphi中创建一个简单的Client-Server应用程序。

Server端

  1. 创建一个新的Delphi VCL应用程序项目。
  2. 在窗体上添加一个TServerSocket组件。
  3. 设置TServerSocket组件的属性:
    • Port:指定服务器监听的端口号。
    • Active:设置为True,以便在窗体加载时自动启动服务器。
  4. 添加一个TMemo组件,用于显示接收到的消息。
  5. 在ServerSocket1的OnClientConnect事件中添加以下代码:
代码语言:delphi
复制
procedure TForm1.ServerSocket1ClientConnect(Sender: TObject;
  Socket: TCustomWinSocket);
begin
  Memo1.Lines.Add('Client connected: ' + Socket.RemoteHost);
end;
  1. 在ServerSocket1的OnClientDisconnect事件中添加以下代码:
代码语言:delphi
复制
procedure TForm1.ServerSocket1ClientDisconnect(Sender: TObject;
  Socket: TCustomWinSocket);
begin
  Memo1.Lines.Add('Client disconnected: ' + Socket.RemoteHost);
end;
  1. 在ServerSocket1的OnClientRead事件中添加以下代码:
代码语言:delphi
复制
procedure TForm1.ServerSocket1ClientRead(Sender: TObject;
  Socket: TCustomWinSocket);
begin
  Memo1.Lines.Add('Received from ' + Socket.RemoteHost + ': ' + Socket.ReceiveText);
end;

Client端

  1. 创建一个新的Delphi VCL应用程序项目。
  2. 在窗体上添加一个TButton组件,用于发送消息。
  3. 在窗体上添加一个TEdit组件,用于输入消息。
  4. 在窗体上添加一个TMemo组件,用于显示接收到的消息。
  5. 在窗体上添加一个TIdTCPClient组件,用于连接到服务器。
  6. 设置TIdTCPClient组件的属性:
    • Host:指定服务器的IP地址或主机名。
    • Port:指定服务器监听的端口号。
  7. 在Button1的OnClick事件中添加以下代码:
代码语言:delphi
复制
procedure TForm1.Button1Click(Sender: TObject);
begin
  if not IdTCPClient1.Connected then
  begin
    try
      IdTCPClient1.Connect;
      IdTCPClient1.IOHandler.WriteLn(Edit1.Text);
      Memo1.Lines.Add('Sent: ' + Edit1.Text);
    except
      on E: Exception do
      begin
        Memo1.Lines.Add('Error: ' + E.Message);
      end;
    end;
  end;
end;

现在,您可以运行Server端和Client端应用程序,并尝试在Client端发送消息。Server端的TMemo组件将显示接收到的消息。

请注意,这只是一个简单的示例,实际的Client-Server应用程序可能需要更复杂的逻辑和错误处理。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

领券