我正在爲辦公室中使用的舊庫編寫替代品,以便與一個相當笨拙和舊的定製C++框架進行通信,該框架通過套接字接受請求以便與一堆其他系統。問題在於它只會接收包含必須以特定方式格式化的字符串的純文本消息。通過.NET中的套接字發送純文本
我面臨的問題是我迄今沒有發現通過套接字發送純文本的方式。 Socket的Send方法只會接收字節數組,並且在偵聽點接收到數據時,它會完全被加擾,並且我無法將其弄亂,以便將字節數組轉換回純文本。我需要能夠發送純文本,而不是字節數組。
這是Connect和Send方法我到目前爲止:
Public Sub Connect(Optional ByVal pHostName As String = "", Optional ByVal pPort As Integer = 0)
If pHostName.Trim <> "" Then mHostName = pHostName
If pPort > 0 Then mPort = pPort
Try
Dim ipep As IPEndPoint
If IsIPAddress(mHostName) Then
ipep = New IPEndPoint(IPAddress.Parse(mHostName), mPort)
Else
ipep = New IPEndPoint(IPAddress.Parse(Dns.GetHostEntry(mHostName).AddressList(0).ToString), mPort)
End If
mSocket = New Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp)
mSocket.Connect(CType(ipep, EndPoint))
mState = eState.Connected
RaiseEvent Connected()
mDataTimer.Start()
Catch ex As Exception
Me.Close()
Throw ex
End Try
End Sub
Public Sub SendData(ByVal pBytes() As Byte)
mSocket.Send(pBytes)
End Sub
Public Sub SendString(ByVal pString As String)
Dim bytes() As Byte = System.Text.Encoding.UTF8.GetBytes(pString)
mSocket.Send(bytes)
End Sub
任何幫助將不勝感激!
另一方面是什麼服務/腳本或應用程序?更多地解釋,所以我們可以幫助你。 –