-2

我想借助计时器在标签中显示互联网连接速度。我写 :

 Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
    Dim myNA() As NetworkInterface = NetworkInterface.GetAllNetworkInterfaces

    lblConnectStatus.Text = "NET CONNECTION SPEED : " & myNA(0).Speed / 1000000 & " Kbps."
End Sub

这显示 7.2 Kbps。在标签中并且始终保持不变。任何人都可以帮助..

4

2 回答 2

1

你必须在互联网上有一些东西,你可以实际下载并使用数学来确定需要多长时间。

有多种方法可以做到这一点,但你的功能(获取数据)级别越低,它就越准确。IE,如果你使用浏览器控件之类的东西,你的结果会很低,即使是混乱的,因为你不知道你下载的确切字节数。

最简单的可能是使用类似My.Computer.Network.DownloadFile()(简单,但不是最准确的)来下载已知的大文件,如 PDF,并使用如下方式对其计时:

dim dStart as DateTime = Now
...Download Code
dim ts as TimeSpan = Now.Subtract(dStart)

然后,您可以根据文件的大小和下载时间来确定速度。

于 2013-10-17T16:22:19.410 回答
-2

添加以下控件:

  • 网络浏览器1
  • Button1,text="获取网速"
  • Label1,text="0 字节每秒"

将此代码粘贴到您的程序中

  Dim t a datetime
 Sub bclk handles button1.click
  Webbrowser1.navigate("stackoverflow.com")
  T= now
 End sub

 Sub wbdoccomplete handles   webbeowser1.documentcomplete
  Dim tspan =now.subtract(t)
  Dim speed as double = (webbrowser1.                        Documenttext.length/tspan.totalseconds)
  Label1.text = speed & " Bytes per second"
End sub
于 2013-10-17T09:58:09.983 回答