1

私はいつもindy9とDelphi7を使用していました。今はかなりの経験がありますが、もう少し進んでいきたいと思います。複数のポートをリッスンしたいのですが、どうすればよいかわかりません。サーバーがアクティブなときにポートを追加/削除できるかどうかも懸念されます。だからここに私が答えを知りたいいくつかの質問があります:

  1. サーバーがすでにアクティブになっているときに、バインディングに新しいポートを追加するにはどうすればよいですか?
  2. サーバーがすでにアクティブになっているときに、バインディングからポートを削除するにはどうすればよいですか?
  3. バインディングを削除すると、Indyはどのように/クライアントをポートから切断しますか?
  4. defaultPortプロパティはどうなりますか?

ご回答ありがとうございます。

4

1 に答える 1

2

1.サーバーがすでにアクティブな状態で、バインドに新しいポートを追加するにはどうすればよいですか?

2.サーバーがすでにアクティブなときに、バインドからポートを削除するにはどうすればよいですか?

3.バインディングを削除すると、Indy はクライアントをポートからどのように切断しますか?

3 つの質問の答えはすべて同じです。求めているものはサポートされていません (Indy 10 でもサポートされていません)。Bindingsコレクションに変更を加える前に、サーバーを非アクティブ化する必要があります。それがニーズに合わない場合は、リッスンする IP/ポート ペアごとに個別のサーバー コンポーネントを使用する必要があります。そうすれば、必要に応じて個別にアクティブ化/非アクティブ化できます。サーバーを非アクティブ化すると、サーバーに接続されているすべてのアクティブなクライアントが自動的に切断されます。

4.defaultPort プロパティはどうなりますか?

プロパティは、コレクションに新しいエントリを追加するときにプロパティDefaultPortを初期化するためにのみ使用されます。それ以外には使用されません。TIdSocketHandle.PortBindings

于 2012-11-08T23:33:59.253 に答える