當前位置: 首頁>>代碼示例>>VB.NET>>正文


VB.NET IChannelReceiver接口代碼示例

本文整理匯總了VB.NET中System.Runtime.Remoting.Channels.IChannelReceiver接口的典型用法代碼示例。如果您正苦於以下問題:VB.NET IChannelReceiver接口的具體用法?VB.NET IChannelReceiver怎麽用?VB.NET IChannelReceiver使用的例子?那麽, 這裏精選的接口代碼示例或許可以為您提供幫助。


在下文中一共展示了IChannelReceiver接口的1個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的VB.NET代碼示例。

示例1: MyCustomChannel

Class MyCustomChannel
      Implements IChannelReceiver 
      Private myChannelData As ChannelDataStore
      Private myChannelPriority As Integer = 25
      ' Set the 'ChannelName' to 'MyCustomChannel'.
      Private myChanneName As String = "tcp"
      ' Implement 'ChannelName' property.
      Private myTcpListener As TcpListener
      Private myPortNo As Integer
      Private myListening As Boolean = False
      Private myThread As Thread

      Public Sub New(ByVal portNo As Integer)
         myPortNo = portNo
      Dim myURI(0) As String
      myURI(0) = Dns.Resolve(Dns.GetHostName()).AddressList(0).ToString() + ":" + _
                                                                  portNo.ToString()
      ' Store the 'URI' in 'myChannelDataStore'.
      myChannelData = New ChannelDataStore(myURI)
      ' Create 'myTcpListener' to listen at the 'myPortNo' port.
      myTcpListener = New TcpListener(myPortNo)
      ' Create the thread 'myThread'.
      myThread = New Thread(New ThreadStart(AddressOf myTcpListener.Start))
      Me.StartListening(Nothing)
      End Sub

      Public ReadOnly Property ChannelName() As String Implements IChannelReceiver.ChannelName
      Get
         Return myChanneName
      End Get
      End Property

      Public ReadOnly Property ChannelPriority() As Integer _
                                          Implements IChannelReceiver.ChannelPriority
      Get
         Return myChannelPriority
      End Get
      End Property

      Public Function Parse(ByVal myUrl As String, ByRef objectURI As String) As String _
                                                      Implements IChannelReceiver.Parse
      Dim myRegex As New Regex("/", RegexOptions.RightToLeft)
      ' Check for '/' in 'myUrl' from Right to left.
      Dim myMatch As Match = myRegex.Match(myUrl)
      ' Get the object URI.
      objectURI = myUrl.Substring(myMatch.Index)
      ' Return the channel url.
      Return myUrl.Substring(0, myMatch.Index)
      End Function 'Parse
      ' Implementation of 'IChannelReceiver' interface.

   Public ReadOnly Property ChannelData() As Object Implements IChannelReceiver.ChannelData
      Get
         Return myChannelData
      End Get
   End Property

   ' Create and send the object URL.
   Public Function GetUrlsForUri(ByVal objectURI As String) As String() _
                                             Implements IChannelReceiver.GetUrlsForUri
      Dim myString(0) As String
      myString(0) = Dns.Resolve(Dns.GetHostName()).AddressList(0).ToString() + "/" + objectURI
      Return myString
   End Function 'GetUrlsForUri

   ' Start listening to the port.
   Public Sub StartListening(ByVal data As Object) Implements IChannelReceiver.StartListening
      If myListening = False Then
          myTcpListener.Start()
          myListening = True
          Console.WriteLine("Server Started Listening !!!")
      End If
   End Sub

   ' Stop listening to the port.
   Public Sub StopListening(ByVal data As Object) Implements IChannelReceiver.StopListening
      If myListening = True Then
          myTcpListener.Stop()
          myListening = False
          Console.WriteLine("Server Stopped Listening !!!")
      End If
   End Sub
End Class
開發者ID:VB.NET開發者,項目名稱:System.Runtime.Remoting.Channels,代碼行數:83,代碼來源:IChannelReceiver


注:本文中的System.Runtime.Remoting.Channels.IChannelReceiver接口示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。