【问题标题】:Counting ping attempts计数 ping 尝试
【发布时间】:2013-09-19 14:24:34
【问题描述】:
Imports System.Net.NetworkInformation
Public Class Form1

    Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
        Timer1.Enabled = True
    End Sub

    Private Sub Timer1_Tick(sender As Object, e As EventArgs) Handles Timer1.Tick

        Dim pingtarget As String = "88.250.204.138"
        Dim pingre As PingReply = Ping.Send(pingtarget)

        If My.Computer.Network.Ping("pingtarget", 9002) Then

           address.ForeColor = Color.Green

           Do While My.Computer.Network.Ping("pingtarget", 9002)

                Me.ListBox1.Items.Add("Response from " & pingtarget & " in " & pingre.RoundtripTime.ToString() & " ms")
                My.Computer.Network.Ping("pingtarget", 9002)

            Loop


        Else
            Timer2.Enabled = True
            address.ForeColor = Color.Red
            MsgBox("Connection Failed")
        End If

    End Sub

End Class

大家好,我刚开始尝试开发一个程序,该程序将持续 ping 服务器,如果连接丢失,客户端将自行重启。我有一些问题:

1- 如何计算重启次数?否则,只要没有连接,它就会一直重启。重新启动将重新尝试再次连接互联网,但失败太多,必须有办法阻止它。例如重启 3 次后,即使没有连接,客户端也会运行。

2- 在这些代码中,当没有连接时,我收到一条错误消息,提示“Microsoft.VisualBasic.dll 中发生了类型为 'System.InvalidOperationException' 的未处理异常”。

【问题讨论】:

  • 此客户端是否将服务器用于其他目的?服务器和客户端是否在同一个网络上?
  • 他们不在同一个网络中。总共有 26 台计算机,它们都在不同的地方和网络中。

标签: vb.net ping


【解决方案1】:

一个明显的问题:

更改这部分代码:

My.Computer.Network.Ping("pingtarget", 9002)

到这里:

My.Computer.Network.Ping(pingtarget, 9002)

您将 pingtarget 作为字符串而不是变量传递。

【讨论】:

    猜你喜欢
    • 2015-10-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-06-29
    • 2016-03-12
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多