TIdTCPClientをTThreadから利用するには?

解決


ころ  2006-10-05 21:33:41  No: 23476

Threadからformに貼り付けられたTIdTCPClientを操作しようとしたのですが

constructor TThread.Create(client:tidtcpclient);
begin
  idtcpclient:=client;
  FreeOnTerminate := true;
  inherited create(false);
end;

procedure TThread.Execute;
var
  ServerMessage:string;
begin
  if not idtcpclient.Connected then exit;
  servermessage:=tidtcpclient.readln('',5);
end;

servermessage:=tidtcpclient.readln('',5);の部分で
「このメソッドの呼び方はクラスメソッドの場合に限られます」と出てコンパイルできません。
Threadを使ってTIdTCPClientに仕事をさせるにはどうすればいいのでしょうか?
DisconnectするまでずっとConnectしっぱなしなのでThreadでTIdTCPClientの接続を維持する方法があれば合わせてお教えください。
宜しくお願い致します。


ちゃん  2006-10-06 00:09:31  No: 23477

>servermessage:=tidtcpclient.readln('',5);
tidtcpclient.readln('',5); でなくて
idtcpclient.readln('',5); では?


ころ  2006-10-06 01:21:16  No: 23478

ちゃん様
ご指摘の通りでした。有難う御座いました。
半日気付かずにソースを睨み付けてましたorz

お騒がせしました。


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加