トップ  >  サンプルソース  >  UDP/IP 非同期受信(C#/VB.NET)

UDP/IP 非同期受信(C#/VB.NET)

2011年09月05日

UDP/IPで非同期のデータ受信するサンプル(ソース/コード)です。.NET(VB/C#)標準のSystem.Net.Sockets.UdpClientを使っています。

UDP/IP関係のその他のツールやサンプルはこちらでお探しください。
UDP/IP送信/受信(VBS/VBA)UDP/IP関係

' -----------------------------------------------------------
' UDP/IPで非同期データ受信するサンプル(VB.NET/VS2005)
' UDP/IPソケット生成
Dim objSck As New System.Net.Sockets.UdpClient(7777)

' UDP/IP受信コールバック設定(System.AsyncCallback)
objSck.BeginReceive(AddressOf ReceiveCallback, objSck)

' UDP/IP受信コールバック関数
Public Sub ReceiveCallback(ByVal AR As IAsyncResult)
    ' UDP/IP受信
    Dim ipAny As System.Net.IPEndPoint = _
        New System.Net.IPEndPoint( _
        System.Net.IPAddress.Any, 0)
    Dim rdat As Byte() = CType(AR.AsyncState, _
        System.Net.Sockets.UdpClient).EndReceive(AR, ipAny)
    Dim rstr As String = _
        System.Text.Encoding.GetEncoding( _
        "SHIFT-JIS").GetString(rdat)
    Debug.WriteLine(rstr)

    ' 連続で(複数回)データ受信する為の再設定
    CType(AR.AsyncState, _
        System.Net.Sockets.UdpClient).BeginReceive( _
        AddressOf ReceiveCallback, AR.AsyncState)
End Sub
' -----------------------------------------------------------

// ----------------------------------------------------------
// UDP/IPで非同期データ受信するサンプル(C#.NET/VS2005)
// UDP/IPソケット生成
System.Net.Sockets.UdpClient objSck =
    new System.Net.Sockets.UdpClient(7777);

// UDP/IP受信コールバック設定(System.AsyncCallback)
objSck.BeginReceive(ReceiveCallback, objSck);

// UDP/IP受信コールバック関数
public void ReceiveCallback(IAsyncResult AR)
{
    // UDP/IP受信
    System.Net.IPEndPoint ipAny =
        new System.Net.IPEndPoint(
        System.Net.IPAddress.Any, 0);
    Byte[] rdat =
        ((System.Net.Sockets.UdpClient)AR.AsyncState).
        EndReceive(AR, ref ipAny);
    String rstr =
        System.Text.Encoding.GetEncoding(
        "SHIFT-JIS").GetString(rdat);
    Debug.WriteLine(rstr);

    // 連続で(複数回)データ受信する為の再設定
    ((System.Net.Sockets.UdpClient)AR.AsyncState).
        BeginReceive(ReceiveCallback, AR.AsyncState);
}
// ----------------------------------------------------------
スポンサーサイト

BackgroundWorkerスレッド(C#/VB.NET) | トップページへ戻る | ファイル監視(C#/VB.NET)

このページのトップに戻る

コメント

名前
題名
メールアドレス
WEBサイト
 
コメント
パスワード
  管理者にだけ表示を許可する

このページのトップに戻る

トラックバック

このページのトップに戻る