Delphi TIdIPMCastClient および TIdIPMCastServer でのマルチキャスト送受信
Delphi TIdIPMCastClient と TIdIPMCastServer を利用したマルチキャスト送受信
最小コード
サーバ(送信側)
フォームへ IdIPMCastServer1, Edit1, Button1 を置く
- uses IdGlobal;
- procedure TMultiCastServerForm.Button1Click(Sender: TObject);
- begin
- IdIPMCastServer1.Send(Edit1.Text, IdGlobal.IndyTextEncoding_UTF8);
- end;
- procedure TMultiCastServerForm.FormCreate(Sender: TObject);
- begin
- IdIPMCastServer1.MulticastGroup := '224.0.0.1';
- IdIPMCastServer1.Port := 5000;
- IdIPMCastServer1.Active := True;
- end;
クライアント(受信側)
フォームへ IdIPMCastClient1, Memo1 を置く
- uses IdGlobal;
- procedure TMulticastClientForm.FormCreate(Sender: TObject);
- begin
- IdIPMCastClient1.MulticastGroup := '224.0.0.1';
- IdIPMCastClient1.DefaultPort := 5000;
- IdIPMCastClient1.Active := True;
- end;
- procedure TMulticastClientForm.IdIPMCastClient1IPMCastRead(Sender: TObject; const AData: TIdBytes; ABinding: TIdSocketHandle);
- begin
- Memo1.Lines.Add(IdGlobal.IndyTextEncoding_UTF8.GetString(AData));
- end;
終了時(IdIPMCastClient1.Active := False;)で例外が発生するようなので補足するべきかも
コメント