IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VB.NET Discussion :

Utilisation du management scope


Sujet :

VB.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éprouvé Avatar de shadowmoon
    Homme Profil pro
    Expert technique et fonctionnel .Net
    Inscrit en
    Mai 2005
    Messages
    1 066
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Expert technique et fonctionnel .Net
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2005
    Messages : 1 066
    Par défaut Utilisation du management scope
    Pour me connecter à un ordinateur distant, j'utilise le code suivant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Dim options As ConnectionOptions = New ConnectionOptions()
     
            options.Authority = "ntdlmdomain:" + Domain
            options.Username = Login
            options.Password = Mdp
     
            Dim scope As ManagementScope = New ManagementScope("\\" + AdressIP, options)
     
    scope.connect()
    L'instanciation de l'objet scope se fait sans erreur, par contre au moment du connect, une exception se lève avec le texte "paramètre non valide".

    Pourtant, quand j'utilise l'outil "connexion bureau à distance", sous Windows 7, et avec les mêmes paramètres, je n'ai aucun souci pour accéder à l'ordinateur en question.


    C'est la première fois que j'utilise cet objet. Quelqu'un peut m'éclairer sur son fonctionnement ?


    NB : Si j'enlève le "\\", j'ai la même exception, mais au niveau du New ManagementScope(AdressIP, options)

  2. #2
    Membre Expert Avatar de _Ez3kiel
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2013
    Messages
    836
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Janvier 2013
    Messages : 836
    Par défaut
    Vérifie la construction de ConnectionOptions est correcte : ConnectionOptions MSDN
    Car là tu instancies avec le constructeur par défaut, puis tu changes qlqes properties, mais les autres restent à leurs valeurs par défaut...

    Et vérifie que Mdp soit un SecureString, sinon tu te retrouves avec cette instanciation qui est recommandée pour une connexion WMI.


    Tu peux aussi t'inspirer de ce tuto d'MSDN : Comment : se connecter à un ordinateur distant

  3. #3
    Membre éprouvé Avatar de shadowmoon
    Homme Profil pro
    Expert technique et fonctionnel .Net
    Inscrit en
    Mai 2005
    Messages
    1 066
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Expert technique et fonctionnel .Net
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2005
    Messages : 1 066
    Par défaut
    Justement, j'ai calqué mon code sur celui dans le tutoriel que tu mentionnes

    Citation Envoyé par _Ez3kiel Voir le message
    Du coup, je vais chercher du coté des options, merci pour ton lien sur ce point précis.

    [edit] Pour les "options", à quoi correspond le paramètre "locale", dont la valeur est "MS_409" dans l'exemple ? Je ne vois pas du tout à quoi il sert ... [/edit]

    [edit2]
    Je ne sais pas si j'ai progressé ou non, mais maintenant, avec ce paramétrage des options :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
      Dim options As ConnectionOptions = New ConnectionOptions("MS_409", Login, Mdp, "ntlmdomain:" + Domain, System.Management.ImpersonationLevel.Impersonate, System.Management.AuthenticationLevel.Default, False, Nothing, System.TimeSpan.MaxValue)
    J'ai toujours un message d'erreur au niveau du connect, toutefois il est différent, et il est devenu : "Les références utilisateur ne peuvent pas être utilisées pour des connexions locales"
    [/edit2]

  4. #4
    Membre Expert Avatar de _Ez3kiel
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2013
    Messages
    836
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Janvier 2013
    Messages : 836
    Par défaut
    1er PS : ConnectionOptions.Locale
    Pour les identificateurs de paramètres régionaux Microsoft, le format de la chaîne est "MS_xxx", où xxx est une chaîne sous forme hexadécimale indiquant le LCID (Locale Identification) ; par exemple, l'anglais américain serait indiqué comme suit : "MS_409".

    2éme PS :
    Ton erreur signifie que que tu ne peux pas te connecter à distance sur toi-même.


    Et après avoir lu d'autres sources, dont MSDN, ta construction était en fait bonne ... Pas taper !
    Donc l'erreur est dans un des 2 paramètres de ton objet ManagementScope, il faudrait que tu regardes la valeur de "AdressIP" (en espérant que ce ne soit pas 127.0.0.1)

  5. #5
    Membre éprouvé Avatar de shadowmoon
    Homme Profil pro
    Expert technique et fonctionnel .Net
    Inscrit en
    Mai 2005
    Messages
    1 066
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Expert technique et fonctionnel .Net
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2005
    Messages : 1 066
    Par défaut
    Citation Envoyé par _Ez3kiel Voir le message
    Ton erreur signifie que que tu ne peux pas te connecter à distance sur toi-même ... regardes la valeur de "AdressIP"
    Je ne pense pas que le souci viennent de l'adresse IP, car mon ordinateur est en IP fixe (10.151.2.132) et l'adresse IP de l'ordinateur de destination (10.151.2.121) est lue depuis un fichier de configuration.

    De plus, les deux ordinateurs sont sur le même réseau informatique et appartiennent aussi au même domaine.

    Citation Envoyé par _Ez3kiel Voir le message
    Donc l'erreur est dans un des 2 paramètres de ton objet ManagementScope
    Si tu veut parler du login et du mot de passe, ils sont bons car :

    Citation Envoyé par shadowmoon
    Pourtant, quand j'utilise l'outil "connexion bureau à distance", sous Windows 7, et avec les mêmes paramètres, je n'ai aucun souci pour accéder à l'ordinateur en question.

  6. #6
    Membre Expert Avatar de _Ez3kiel
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2013
    Messages
    836
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Janvier 2013
    Messages : 836
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    ' Make a connection to a remote computer.
            ' Replace the "FullComputerName" section of the
            ' string "\\FullComputerName\root\cimv2" with
            ' the full computer name or IP address of the
            ' remote computer.
            Dim scope As ManagementScope
            scope = New ManagementScope( _
                "\\FullComputerName\root\cimv2")
            scope.Connect()
    Selon MSDN, il faut remplacer "FullComputerName" par le nom du pc, ou l'ip, ce qui donne :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    scope = New ManagementScope( _
                "\\10.151.2.xxx\root\cimv2")
    Je l'interprète comme cela, après je ne suis pas sûr.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 4
    Dernier message: 11/09/2010, 18h43
  2. [SQL2K5] Utiliser le manager studio 2008 pour l'intellissense
    Par Monstros Velu dans le forum MS SQL Server
    Réponses: 1
    Dernier message: 18/06/2009, 20h37
  3. utilisation enterprise manager avec 10GR1.
    Par ylarvor dans le forum Installation
    Réponses: 2
    Dernier message: 01/08/2007, 12h25
  4. mode de compilation pour du Natif utilisant du Managed
    Par breezer911 dans le forum C++/CLI
    Réponses: 1
    Dernier message: 17/04/2007, 07h14
  5. Quand utiliser du Natif, et quand utiliser du Managé
    Par Nico_stras dans le forum C++/CLI
    Réponses: 7
    Dernier message: 11/01/2007, 14h26

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo