Verrouillé Informations sur le réseau

  • vendredi 13 juin 2008 09:35
     
     

    Bonjour à tous,

     

    Dans un programme .net (c#) je cherche à récupérer les informations que l'on retrouve dans le "Network and Sharing Center" :

    - Nom du réseau sur lequel on est connecté

    - Type de réseau (public, private...)

     

    Si vous avez des infos...

     

    Merci.

    Sébastien

Toutes les réponses

  • vendredi 13 juin 2008 13:40
    Modérateur
     
     
    Es-ce que System.Net.NetworkInformation serait ok?
  • vendredi 13 juin 2008 13:45
     
     

    Merci pour ta réponse...

     

    en fait, je cherche surtout à récupérer le nom du réseau sur lequel je me trouve (celui afficher par vista).

     

    à partir de ça, je vais pouvoir identifer les différents réseaux sur lequel je me connecte, et configurer par exemple mon proxy, mon imprimante par défaut, le stmp...

     

    Merci.

    Sébastien

     

  • mercredi 8 octobre 2008 07:41
     
     

    Recherche sur les blogs de code-sources, je sais y en a un qui avait ces informations.

     

    Meilleures salutations !

  • mercredi 9 septembre 2009 13:46
     
     Réponse proposée
    Bonjour,

    Je pense que ce que tu cherches ce trouve sous forme d'objet COM là :

    http://msdn.microsoft.com/en-us/library/aa370735(VS.85).aspx

    Sinon tu as l'astuce suivante :

    http://blogs.developpeur.org/sebmafate/archive/2008/06/24/c-vista-r-cup-rer-les-informations-sur-le-r-seau-courant.aspx

    C'est un peu 'capilotracté' mais bon.

    Un MVP va bien nous trouver la classe WMI qui va bien ;o)


    Cordialement.

    JP
    JPB
    • Proposé comme réponse Bleucat mercredi 9 septembre 2009 13:47
    •  
  • mercredi 9 septembre 2009 14:57
     
     Réponse proposée A du code
    Re Bonjour,

    Je suis un peu nouveau en C#, mais en m'inspirant de :

    http://msdn.microsoft.com/en-us/library/aa645736(VS.71).aspx

    Qui explique comment utiliser un composant COM en C#

    J'ai pondu le bout de code suivant à partir d'un projet console et en ajoutant une référence à l'objet COM "Network List Manager".

    Je pense que pour le coup c'est la réponse ;o)


    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    
    namespace networkCenter
    {
      class Program
      {
        static void Main(string[] args)
        {
          NETWORKLIST.NetworkListManager nlmLesListesDuNetworkCenter = new NETWORKLIST.NetworkListManager();
    
          NETWORKLIST.IEnumNetworks TousLesRéseaux = nlmLesListesDuNetworkCenter.GetNetworks(NETWORKLIST.NLM_ENUM_NETWORK.NLM_ENUM_NETWORK_ALL);
    
          foreach (NETWORKLIST.INetwork ChaqueRéseaux in TousLesRéseaux)
          {
            Console.WriteLine("Nom du réseau {0} utilisé : {1}", ChaqueRéseaux.GetName(), ChaqueRéseaux.IsConnected);
    
            if (ChaqueRéseaux.GetName() == "silogix")
            {
              /* Positionne le réseau reconnu comme Privé
               */
              ChaqueRéseaux.SetCategory(NETWORKLIST.NLM_NETWORK_CATEGORY.NLM_NETWORK_CATEGORY_PRIVATE);
            }
          }
    
        }
      }
    }
    Cordialement

    JP
    JPB
    • Proposé comme réponse Bleucat mercredi 9 septembre 2009 14:57
    •