本帖最后由 mosada 于 2010-11-11 11:39:44 编辑

解决方案 »

  1.   

    SetSocketOption(SocketOptionLevel.Udp,SocketOptionName.ReuseAddress, true);
    这个?
      

  2.   

    單寫這行程式碼 出現10022:提供不正確引數 
    我發現他也有跟我相同問題
    http://social.msdn.microsoft.com/forums/zh-tw/232/thread/85F76962-FF69-4B85-9558-886CB08242AC
    但是他是使用一對多傳送方式
    不知道我的例子適用BILL的方法
      

  3.   

    第一個問題解決了 SetSocketOption(SocketOptionLevel.Socket, SocketOptionName.ReceiveBuffer, 1000);
              原因:SocketOptionName.ReceiveBuffer 是Socket Level而不是Udp Level的參數
      
    第二個問題 接收機制:
          不知道各位高手可以提供方法讓小妹
          我初步是想到Thread去控制接收不過這樣又回到一個一個接收模式
         
     
      

  4.   

    補充第一個問題
    Socket 選項,決定目前 Socket 的行為。在具有 Boolean 資料類型的選項上,指定一個非零值可以啟用選項,零值可以停用選項。而在具有整數資料類型的選項上,則指定適當的值。Socket 選項會依據通訊協定支援的層級來予以分組。以下所列是可以使用這個多載加以設定的各種 Socket 選項。這些選項是由適當的 SocketOptionLevel 所分組。如果您打算設定任何這些選項,請務必要對 optionLevel 參數使用適當的 SocketOptionLevel。選擇要設定的選項必須在 optionName 參數中加以指定。如果您想要取得所列出任何選項的現行值,請使用 GetSocketOption 方法。可以使用這個多載加以設定的 SocketOptionLevel.Socket 選項。    *      Broadcast
        *      DontLinger
        *      Debug
        *      Error
        *      KeepAlive
        *      OutOfBandInline
        *      ReceiveBuffer
        *      ReceiveTimeout
        *      ReuseAddress
        *      SendBuffer
        *      SendTimeout
        *      Type可以使用這個多載加以設定的 SocketOptionLevel.IP 選項。    *      HeaderIncluded
        *      IPOptions
        *      IpTimeToLive
        *      MulticastInterface
        *      MulticastLoopback
        *      MulticastTimeToLive
        *      TypeOfService
        *      UseLoopback可以使用這個多載加以設定的 SocketOptionLevel.Tcp 選項。    *      BsdUrgent
        *      Expedited
        *      NoDelay可以使用這個多載加以設定的 SocketOptionLevel.Udp 選項。    *      ChecksumCoverage
        *      NoChecksum可以使用這個多載加以設定的 SocketOptionLevel.IPv6 選項。    *      HopLimit如需這些選項的詳細資訊,請參閱 SocketOptionName 列舉型別。