unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ScktComp, StdCtrls;
type
TForm1 = class(TForm)
Edit1: TEdit;
Button1: TButton;
ClientSocket1: TClientSocket;
ServerSocket1: TServerSocket;
Edit2: TEdit;
Button2: TButton;
Button3: TButton;
Edit3: TEdit;
Button4: TButton;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
procedure Button4Click(Sender: TObject);
private
{ Private 宣言 }
public
{ Public 宣言 }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);
begin
ClientSocket1.Host := Edit1.Text;
ClientSocket1.Port := StrToInt(Edit2.Text);
ClientSocket1.Open;
end;
procedure TForm1.Button2Click(Sender: TObject);
begin
ServerSocket1.Port := 9999; // ポート番号を 9999 番に指定
ServerSocket1.Open; // 待ち受けを開始する
end;
procedure TForm1.Button3Click(Sender: TObject);
begin
ServerSocket1.Close; // 待ち受けを終了する
end;
procedure TForm1.Button4Click(Sender: TObject);
var
dat1 : Longword ;
dat2 : Longword ;
wsStream : TWinSocketStream;
begin
wsStream := TWinSocketStream.Create(ClientSocket1, 60000);
wsStream.Free;
end;
end.
はじめまして。
上記のプログラムでは
[エラー] Unit1.pas(61): 'TCustomWinSocket' と 'TClientSocket' には互換性がありません
と表示されコンパイル出来ません。
間違えているとはおもえないのですが。
何処が間違えているのでしょうか?
すいません自己解決しました
wsStream := TWinSocketStream.Create(ClientSocket1.Socket, 60000);
でした
TClientSocketとTClientWinSocketは別物です。
TClientSocketは、TCustomWinSocketを継承していません。
ツイート | ![]() |