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 :

Vérifier si un compte ordinateur est présent dans l'AD


Sujet :

VB.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Juin 2007
    Messages
    64
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 64
    Par défaut Vérifier si un compte ordinateur est présent dans l'AD
    Voici mon code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
            Public Function computerExist(ByVal computerAverifier As String, _
    	                          ByVal cheminLdapAexaminer As String, _
    	                          ByVal monUsername As String, _
    	                          ByVal monPassword As String) As Boolean
     
            Try
                ' Connexion à l'annuaire
                Dim monEntry As New DirectoryEntry(cheminLdapAexaminer, monUsername, _
    			                    monPassword, AuthenticationTypes.Secure)
                Dim maRecherche As DirectorySearcher = New DirectorySearcher
     
                ' Paramétrage de la requête
                maRecherche.SearchRoot = monEntry
                maRecherche.Filter = "(&(objectClass=computer) (cn=" + computerAverifier + "))"
     
                ' Récupération du résultat de la requête
                Dim results As SearchResultCollection = maRecherche.FindAll()
                monEntry.Close()
     
                ' Analyse du résultat
                If results.Count = 0 Then
                    Return False
                Else
                    Return True
                End If
     
            Catch ex As Exception
     
                MessageBox.Show(ex.Message)
     
            End Try
     
        End Function
    Mon problème est que la réponse retournée est toujours false alors que le compte ordinateur existe bien.
    Et il me génère une erreur "Unspecified error" dans une msgbox lorsque j'appui sur le bouton qui déclanche le test

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
            Dim Verifier As Boolean = computerExist("test", "OU=Test,DC=nantes,DC=fr", "login", "mdpasse")
            If Verifier = True Then
                MsgBox("existe")
            Else
                MsgBox("n'existe pas")
            End If

  2. #2
    Rédacteur

    Inscrit en
    Juin 2004
    Messages
    744
    Détails du profil
    Informations personnelles :
    Âge : 44

    Informations forums :
    Inscription : Juin 2004
    Messages : 744
    Par défaut
    Ton code me semble correct es tu sur que ce n'est pas un problème de sécurité. Peux tu te connecter a L'AD et retourner tout les élements (sans recherche particulière) ?
    Envie de contribuer à la rubrique SharePoint ? Contactez moi par MP !

    SharePoint : http://sharepoint.developpez.com
    Mon site : http://lefortludovic.developpez.com
    Mon blog : http://www.consultpoint.net/blog

  3. #3
    Membre confirmé
    Inscrit en
    Juin 2007
    Messages
    64
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 64
    Par défaut
    Bah oui justement, je peux lister une OU ou déplacer un compte d'une OU à l'autre alors je ne vois pas pourquoi?

  4. #4
    Membre confirmé
    Inscrit en
    Juin 2007
    Messages
    64
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 64
    Par défaut
    Bon voilà mon petit souci, j'ai une commande :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    dsquery computer domainroot -o dn -name toto -d masociete.com -u admin -p password
    Elle vérifie si un compte d'ordinateur est présent dans Active Directory. Je veux donc savoir si la commande revoie une réponse ou pas.

    J'ai fait le code suivant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    If  CBool(Shell("dsquery computer domainroot -o dn -name toto -d nantes.ares.ssii -u admininstall -p InstallAdmin44")) Then
     
    MsgBox("pc present")
     
    Else
     
    MsgBox("pc pas present")
     
    End If
    Mais cela me renvoi toujours que le pc est présent car la commande fonctionne toujours sauf qu'elle donne un résultat quand le compte existe et n'en donne pas quand le compte n'existe pas.

Discussions similaires

  1. [Batch] Vérifier si une chaine de caractères est présente dans un fichier
    Par jp_____ dans le forum Scripts/Batch
    Réponses: 2
    Dernier message: 23/08/2013, 10h40
  2. Vérifier si une chaine est présente dans une autre
    Par Galdon dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 26/10/2008, 14h42
  3. Réponses: 11
    Dernier message: 16/12/2007, 16h33
  4. Comment vérifier si le compte XP est vérouillé ?
    Par jakouz dans le forum API, COM et SDKs
    Réponses: 2
    Dernier message: 30/09/2005, 21h04
  5. [Liste] Savoir si un élément est présent dans une liste
    Par Wookai dans le forum Collection et Stream
    Réponses: 11
    Dernier message: 02/05/2005, 20h44

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