Eigene IP-Adresse unter Vista ermittlen

04/12/2008 - 09:20 von Walter Sporn | Report spam
Hallo,

ich habe bisher in meiner Applikation meine eigene IP-Adresse (brauche ich
für die Info an den User) über folgenden Befehl erhelten:

/// <summary>
/// Gets own IPAddress
/// </summary>
private string MyIP
{
get
{

return System.Net.Dns.GetHostByName(
System.Net.Dns.GetHostName()).AddressList[0].ToString();

}

}

Das hat bisher unter XP tadellos funktioniert, aber unter VISTA bekomme ich
eine Exception:
"Es wurde eine Adresse verwendet, die mit dem angeforderten Protokoll nicht
kompatibel ist."

Ich hab zwar noch nicht nàher analysiert, aber ich denke, die Adressliste
wird leer zurück gegeben und an der Stelle [0] steht nichts, oder aber dort
steht Unsinniges.

Jedenfalls finde ich über Google keine Vorschlàge oder Ideen zu diesem
Problem.

Weiß jemand Rat?

Danke!!!!
 

Lesen sie die antworten

#1 Stefan Simon
04/12/2008 - 11:12 | Warnen spam
"Walter Sporn" schrieb im Newsbeitrag
news:
Hallo,

ich habe bisher in meiner Applikation meine eigene IP-Adresse (brauche ich
für die Info an den User) über folgenden Befehl erhelten:

return System.Net.Dns.GetHostByName(




GetHostByName ist obsolate. Versuche mal folgendes. Allerdings kann ein
Rechner mehrere IP-Adressen haben, die "richtige" musst du dir schon selbst
heraussuchen.

\\\
private string GetIP()
{
string result = String.Empty;
foreach (System.Net.IPAddress ip in
System.Net.Dns.GetHostEntry(System.Net.Dns.GetHostName()).AddressList)
{
result += "; " + ip.ToString();
}
return result == String.Empty ? result : result.Substring(2);
}
///

Stefan

Ähnliche fragen