2010-10-01 8 views
2

J'ai essayé tous les trucs du livre, en créant un nouvel objet, en l'instanciant (même si je ne peux pas) et en essayant juste de créer une référence pour l'utiliser, puis en essayant d'appeler la valeur .Address dedans en l'utilisant comme si j'utilisais un membre partagé (sans instanciation) et que rien ne fonctionnait, msdn sample/help est inutile ... j'ai même essayé de l'hériter et de l'utiliser comme ça, aucun d'entre eux n'a fonctionné, je suis sûr qu'il me manque Quelque chose, quelqu'un peut-il me donner des échantillons de code? voici les docs sur msdn pour vous donner une vue d'ensemble ...Comment utiliser System.Net.NetworkInformation.GatewayIPAddressInformation Class?

http://msdn.microsoft.com/en-us/library/system.net.networkinformation.gatewayipaddressinformation.aspx

bien que j'aime vb.net plus je peux lire et codifiés dans les deux C# et vb.net donc soit ira bien.

merci :)

aparté: si quelqu'un se demande pourquoi, im juste essayer d'obtenir mon nom routeurs/étiquette d'un PC comme montré ici ... How to get Router Name & IP as shown in Windows Network Tab? (in Code)

Répondre

6

De MSDN:

  • En bref, vous appelez NetworkInterface.GetAllNetworkInterfaces() pour obtenir un ensemble d'adaptateurs. Sur l'un de ces adaptateurs, obtenez adapter.GetIPProperties().GatewayAddresses. Chaque élément de GatewayAddresses est un GatewayIPAddressInformation.

public static void DisplayGatewayAddresses() 
{ 
    Console.WriteLine("Gateways"); 
    NetworkInterface[] adapters = NetworkInterface.GetAllNetworkInterfaces(); 
    foreach (NetworkInterface adapter in adapters) 
    { 
     IPInterfaceProperties adapterProperties = adapter.GetIPProperties(); 
     GatewayIPAddressInformationCollection addresses = adapterProperties.GatewayAddresses; 
     if (addresses.Count >0) 
     { 
      Console.WriteLine(adapter.Description); 
      foreach (GatewayIPAddressInformation address in addresses) 
      { 
       Console.WriteLine(" Gateway Address ......................... : {0}", 
        address.Address.ToString()); 
      } 
      Console.WriteLine(); 
     } 
    } 
} 
+0

ahh, merci, je suis Boucler dans ce fait sans se rendre compte du type (grâce à la déclaration implicite lol) la recherche du « nom du routeur » insaisissable que j'ai cherché la dernière 3 jours maintenant ... merci ... –

+0

ps: je cherche comment obtenir le nom du routeur SOHO de base/utilisateur comme ici, mais ne peut pas le trouver dans la classe networkInterface ... http: // stackoverflow. com/questions/3839189/comment-obtenir-routeur-nom-ip-comme-montré-dans-windows-network-tab-in-code –