【问题标题】:Form not passing IP address表单未传递 IP 地址
【发布时间】:2019-12-02 22:12:26
【问题描述】:

我有三种形式: 1.输入端口号(表格2) 2.输入IP地址(表格3) 3.启动客户端socket(形式一)

端口号已成功传递,我可以移动表单 2。但是,单击“确定”按钮时表单 2 出现错误:

System.Net.Sockets.SocketException (0x80004005): 请求的地址 在其上下文 127.0.0.0:0 中无效 System.Net.Sockets.TcpClient..ctor(字符串主机名,Int32 端口)

端口表单确定按钮处理程序(表单 2)

Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
    Dim OBJ As New Form3
    OBJ.Port = txtSend.Text
    OBJ.Show()
    Me.Hide()
End Sub

IP 地址表单确定按钮处理程序(表单 3)

Public Property Port As String
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
    Dim OBJ As New Form1
    OBJ.IP = txtSend.Text
    OBJ.Show()
    Me.Hide()
End Sub

应该传递IP地址和端口号的函数(形式一)

Public Property Port As String
Public Property IP As String

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
    mobjClient = New TcpClient(IP, CInt(Port))
    DisplayText("Connected to host" & vbCrLf)

    mobjClient.GetStream.BeginRead(marData, 0, 1024, AddressOf DoRead, Nothing)

    Send("New client online")
End Sub

【问题讨论】:

  • Port 属性在哪里设置?
  • 更新了问题。它以类似于 IP 地址的自己的形式设置
  • 这是在 Form3 类型的对象上设置属性;如果你最后一个 sn-p 中的对象实际上是 Form1 类?
  • 是的,就是表格 1

标签: vb.net tcpclient


【解决方案1】:

只需添加箭头所在的行。

IP 地址表单确定按钮处理程序(表单 3)

Public Property Port As String
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
    Dim OBJ As New Form1
    OBJ.IP = txtSend.Text
    OBJ.Port = Port '<<=====
    OBJ.Show()
    Me.Hide()
End Sub

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-04-05
    • 2016-04-03
    • 1970-01-01
    • 2011-03-29
    • 2018-10-22
    • 1970-01-01
    • 2014-08-04
    相关资源
    最近更新 更多