Problème avec affichage d'IP dans un Label [Résolu]

Signaler
Messages postés
319
Date d'inscription
jeudi 1 avril 2010
Statut
Membre
Dernière intervention
16 mars 2011
-
cs_aus3004
Messages postés
319
Date d'inscription
jeudi 1 avril 2010
Statut
Membre
Dernière intervention
16 mars 2011
-
Bonsoir,

Je débute en programmation depuis quelques semaines et j'aimerais afficher l'IP du PC dans mon programme.
J'ai récupéré ce code :

-----------------------------------------------------------------------------------
Imports System.Net

Function GetIPaddresses(Optional ByVal computername As String = "localhost") As String()

Dim saddr() As String
Dim addr() As IPAddress = Dns.Resolve(computername).AddressList()
Dim i As Integer
If addr.Length > 0 Then
saddr = New String(addr.Length - 1) {}
For i = 0 To addr.Length - 1
saddr(i) = addr(i).ToString
Next
End If

Return saddr

End Function
-----------------------------------------------------------------------------------

Et faudrait que l'IP soit affichée dans un Label.
Comment faire ?
Je vous remercie d'avance pour votre aide.

12 réponses

Messages postés
13298
Date d'inscription
lundi 13 décembre 2004
Statut
Modérateur
Dernière intervention
3 février 2018
30
salut,

à supposer ce code exact (te retournant apparemment toutes les IP locales) :

label1.text = GetIPaddresses("localhost")(0)

[hr]
Messages postés
319
Date d'inscription
jeudi 1 avril 2010
Statut
Membre
Dernière intervention
16 mars 2011
1
Merci pour ta réponse rapide, ça marche parfaitement !
++++
Messages postés
319
Date d'inscription
jeudi 1 avril 2010
Statut
Membre
Dernière intervention
16 mars 2011
1
Oups...!
Petit problème, cela indique l'IP locale qui est toujours la même, donc sans interêt.

Connais-tu un code simple comme celui-ci pour afficher l'IP que l'on trouve par exemple sur le site http://www.adresseip.com/ ??

Bonne soirée
Messages postés
13298
Date d'inscription
lundi 13 décembre 2004
Statut
Modérateur
Dernière intervention
3 février 2018
30
mis à part que si c'est une autre question (et c'est le cas) alors il faut ouvrir un autre sujet ; cf règlement, tu trouveras de la même manière que tu as trouvé ce code : il faut chercher

trouver ip distante, par exemple

aller pour cette fois :

http://www.codyx.org/snippet_recuperer-source-page-dans-variable-string-api_620.aspx#2328

label1.text = DownloadSource("http://www.whatismyip.org")
Messages postés
319
Date d'inscription
jeudi 1 avril 2010
Statut
Membre
Dernière intervention
16 mars 2011
1
Ok, merci, c'est la première fois que je poste un message.
Sinon quand je copie :

label1.text = DownloadSource("http://www.whatismyip.org")

Public Function DownloadSource(ByVal address As String, ByVal UserAgent As String) As String
Dim Result As String
Using NetC As New WebClient()
NetC.Headers(HttpRequestHeader.UserAgent) = UserAgent
Result = NetC.DownloadString(address)
End Using
Return Result
End Function
Public Function DownloadSource(ByVal address As Uri, ByVal UserAgent As String) As String
Return DownloadSource(address.ToString(), UserAgent)
End Function

Il y a marqué l'erreur suivante :

Erreur 3 La résolution de surcharge a échoué, car aucun 'DownloadSource' accessible n'accepte ce nombre d'arguments.
Messages postés
13298
Date d'inscription
lundi 13 décembre 2004
Statut
Modérateur
Dernière intervention
3 février 2018
30
ah oui tu dois ajouter le useragent en paramètre, j'ai été trop vite

"IE" devrait fonctionner
Messages postés
319
Date d'inscription
jeudi 1 avril 2010
Statut
Membre
Dernière intervention
16 mars 2011
1
Je débute, et donc je comprend rien à rien quand le vocabulaire sort du mot label et Webbrowser.
Peux-tu refaire le code avec la modification nécessaire au fonctionnement du code.
Merci encore.
Messages postés
13298
Date d'inscription
lundi 13 décembre 2004
Statut
Modérateur
Dernière intervention
3 février 2018
30
Imports System
Imports System.Net
Public Class Form2

    Private Sub Form2_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        Me.Text = DownloadSource("http://www.whatismyip.org", "IE")
    End Sub

    'http://www.codyx.org/snippet_recuperer-source-page-dans-variable-string-api_620.aspx#2328
    Private Function DownloadSource(ByVal address As String, ByVal UserAgent As String) As String
        Dim Result As String
        Using NetC As New WebClient()
            NetC.Headers(HttpRequestHeader.UserAgent) = UserAgent
            Result = NetC.DownloadString(address)
        End Using
        Return Result
    End Function
End Class
Messages postés
319
Date d'inscription
jeudi 1 avril 2010
Statut
Membre
Dernière intervention
16 mars 2011
1
Merci ça fonctionne sans aucun problème.
Bonne continuation dans la modération du forum
Messages postés
319
Date d'inscription
jeudi 1 avril 2010
Statut
Membre
Dernière intervention
16 mars 2011
1
Ya encore un problème avec ce code : il marche à 90%.
Les 10% ou il marche pas ya marqué ceci

Result = NetC.DownloadString(address)

L'exception WebException n'a pas été générée.

Si vous avez une idée du problème, merci de me renseigner.
Messages postés
13298
Date d'inscription
lundi 13 décembre 2004
Statut
Modérateur
Dernière intervention
3 février 2018
30
contacte l'auteur du snippet
++
Messages postés
319
Date d'inscription
jeudi 1 avril 2010
Statut
Membre
Dernière intervention
16 mars 2011
1
Pour clore cette discussion pouvez-vous me dire comment corriger cette exception svp.
C'est indispensable pour mon projet !!!!!!!