Bonjour,

(Je débute en vbNet), je cherche à récupérer les info du panneau "d'état de connexion du réseau sans fil", que l'on a en cliquant dans le systray sur l'icône de connexion à Internet.
Les infos sont donc déjà regroupées par le système, mais a priori nul ne sait comment aller les chercher (si c'est possibile), alors je tente de récupérer ces infos par le code, mais je n'arrive pas à toutes les récupérer, d'où 4 questions in fine; voici ce que j'ai fait :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
 
Option Explicit On
Imports System.Net.NetworkInformation
Imports System.Net
Imports System.Math
 
Public Class Form1
  Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
    Dim Statistics As IPv4InterfaceStatistics
    Dim varHostEntry As IPHostEntry
    Dim t1
    Dim p1 As Double
    Dim p2 As Double
    '
    TextBox1.Text = ""
    t1 = ""
    '
    ' connexion
    If My.Computer.Network.IsAvailable Then TextBox1.Text = TextBox1.Text & "Etat     : Connecté" & vbCrLf
    If Not My.Computer.Network.IsAvailable Then TextBox1.Text = TextBox1.Text & "Etat     : Déconnecté" & vbCrLf
    '
    TextBox1.Text = TextBox1.Text & "Computer : " & Environment.UserName & vbCrLf
    ' IP
    varHostEntry = Dns.GetHostByName(System.Net.Dns.GetHostName.ToString)
    For Each varAnAddress In varHostEntry.AddressList
      t1 = varAnAddress.ToString
    Next
    TextBox1.Text = TextBox1.Text & "Adr I.P  : " & t1 & vbCrLf
 
    ' Trafic
    For Each NetInterface As NetworkInterface In System.Net.NetworkInformation.NetworkInterface.GetAllNetworkInterfaces()
      If NetInterface.NetworkInterfaceType = NetworkInterfaceType.Wireless80211 Then
        Statistics = NetInterface.GetIPv4Statistics
        p1 = System.Math.Round(Statistics.BytesSent / 1048576, 2)
        p2 = Round(Statistics.BytesReceived / 1048576, 2)
        TextBox1.Text = TextBox1.Text & "Trafic   : " & Format(Round(p1 + p2, 3), "0.000") & " Mo" & vbCrLf
      End If
    Next
    '
    'Dim monInterface As NetworkInterface
    'Dim r As Long
    'r = monInterface.Speed
    'TextBox1.Text = TextBox1.Text & "Vitesse  : " & r
  End Sub ' form1
End Class
4 QUESTIONS :

-1/4-
Dans :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
 
varHostEntry = Dns.GetHostByName(System.Net.Dns.GetHostName.ToString)
Ceci :

Il me dit que c'est obsolète, par quoi puis-je le remplacer ?

-2/4-
Il me manque la vitesse de connexion, j'ai un début de code, mais ça ne marche pas, il doit en manquer des morceaux, voici ce que j'ai :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
    'Dim monInterface As NetworkInterface
    'Dim r As Long
    'r = monInterface.Speed
    'TextBox1.Text = TextBox1.Text & "Vitesse  : " & r
Et il dit :


"La référence d'objet n'est pas définie … une instance d'un objet."


Si vous pouvez me dire comment résoudre ce problème ???


-3/4-
En avant dernier il me manque SSID (le nom du réseau wifi), comment puis-je faire ???


-4/4-
En dernier je cherche à récupérer la qualité de connexion maxi 5 à mini 0, comment puis-je ?

Merci beaucoup, cordialement.

Joe.