麻烦大家帮小弟我看一下有关SOCKET的程序,服务端和客户端一直连接不上,小弟我都无语了
麻烦大家帮我看一下有关SOCKET的程序,服务端和客户端一直连接不上,我都无语了
客户端
客户端
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ComCtrls, ScktComp,ExtCtrls;
type
TfrmMain = class(TForm)
Memo1: TMemo;
Client: TClientSocket;
StatusBar1: TStatusBar;
Label1: TLabel;
edtHost: TEdit;
Label2: TLabel;
edtPort: TEdit;
btnconnect: TButton;
btndisconnect: TButton;
btnsend: TButton;
btncreat: TButton;
Edit1: TEdit;
procedure btnconnectClick(Sender: TObject);
procedure btndisconnectClick(Sender: TObject);
procedure Edit1KeyPress(Sender: TObject; var Key: Char);
procedure ClientConnect(Sender: TObject; Socket: TCustomWinSocket);
procedure ClientRead(Sender: TObject; Socket: TCustomWinSocket);
procedure ClientDisconnect(Sender: TObject; Socket: TCustomWinSocket);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure btncreatClick(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
frmMain: TfrmMain;
TotalLen:Integer;
implementation
uses ShellAPI;
{$R *.dfm}
procedure TfrmMain.btnconnectClick(Sender: TObject);
begin
Client.Address:=edtHost.Text; //指定主机IP
Client.Port:=strtoint(edtPort.Text); //指定主机端口
Client.Active:=true;
end;
procedure TfrmMain.btndisconnectClick(Sender: TObject);
begin
Client.Active:=false;
end;
procedure TfrmMain.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
if key=#13 then //如果按下回车键,就发送文本
begin
if not Client.Active then
btnConnectClick(Sender);