Partial Class _Default
Inherits System.Web.UI.Page
Protected Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim orderNum As String = txtNumber.Value '订单编号
Dim orderNum0 As String = txtNumber0.Value '订单编号
Dim orderNum1 As String = txtNumber1.Value '订单编号
Dim result As String
Dim result0 As String
Dim result1 As String
result = UDPCommunication("%G|" & orderNum & "%") '和UDPClient通讯并获取返回值
result0 = UDPCommunication("%G|" & orderNum0 & "%") '和UDPClient通讯并获取返回值
result1 = UDPCommunication("%G|" & orderNum1 & "%") '和UDPClient通讯并获取返回值
'p1.InnerText = result
'根据自定义格式解析返回值
End Sub
'UDP通讯函数
Function UDPCommunication(ByVal input As String) As String
Dim udp As New System.Net.Sockets.UdpClient(0)
Dim ip As New System.Net.IPEndPoint(System.Net.IPAddress.Parse("127.0.0.1"), 52177) '定义通讯的网络端点,地址和端口号要和和UDPClient启动时的一致
Dim bytes() As Byte = System.Text.Encoding.Unicode.GetBytes(input)
udp.Send(bytes, bytes.Length, ip) '发送数据
Dim result As String = "!false"
Dim sdt As Date = Date.Now
While Date.Now < sdt.AddSeconds(1) '等1秒
If udp.Available > 0 Then
Dim remoteIp As New System.Net.IPEndPoint(System.Net.IPAddress.Any, 0)
Dim rbytes() As Byte = udp.Receive(remoteIp)
result = System.Text.Encoding.Unicode.GetString(rbytes) '获取返回值
End If
End While
udp.Close()
Return result
End Function
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
End Sub
End Class