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

VBScript Discussion :

[VBS][Active Directory] Gestion des erreurs en cas d'utilisateur non présent et de champ nom renseigné.


Sujet :

VBScript

Mode arborescent

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Invité
    Invité(e)
    Par défaut [VBS][Active Directory] Gestion des erreurs en cas d'utilisateur non présent et de champ nom renseigné.
    Bonjour,
    je voudrais savoir s'il existe une gestion d'erreur - qui soit paramétrable - lors de la recherche d'un utilisateur dans Active Directory.

    Je m'explique :
    Je fais une recherche sur mon AD avec le login d'un utilisateur.
    J'aimerais avoir un message me signalant que le compte n'existe pas.

    Si le compte existe je récupère le contenu du champ "radiomessagerie (PAGER)" et aimerais aussi avoir un message s'il est vide.

    Avez-vous une idée?
    Ci-dessous, 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
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    OPTION Explicit
     
    Dim objConnection, objCommand, setUserAccontName, objRecordSet, strResult, oRootDSE
     
    'ADS_SCOPE_SUBTREE (variable indiquant jusqu'a combien de niveau descendre)
    Const ADS_SCOPE_SUBTREE = 2
     
    setUserAccontName = InputBox("Entrez le nom du compte utilisateur", "AD - find User PIN Number")
     
    'Recherche du domaine Active Directory courant
    Set oRootDSE = GetObject("LDAP://rootDSE")
     
    'Connexion de type base de donnée à l'AD
    Set objConnection = CreateObject("ADODB.Connection")   
        With objConnection
            .Provider = "ADsDSOObject"
            .Open "Active Directory Provider"
        End With
     
    ' Définition de la recherche
    Set objCommand =   CreateObject("ADODB.Command")
    Set objCommand.ActiveConnection = objConnection
        With objCommand
            .Properties("Page Size") = 1000
            .Properties("Searchscope") = ADS_SCOPE_SUBTREE
            .CommandText = "SELECT pager FROM 'LDAP://" _
                            & oRootDSE.get("defaultNamingContext") _ 
                            & "'WHERE objectCategory='user'" _
                            & "AND sAMAccountName='" & setUserAccontName & "'"
         End With 
     
     
    On Error Resume Next
     
    Set objRecordSet = objCommand.Execute
     
    objRecordSet.MoveFirst
        Do Until objRecordSet.EOF
            strResult = objRecordSet.Fields("pager").Value
            objRecordSet.MoveNext
        Loop
     
    If strResult <> "" Then 
            Wscript.Echo "Le numéro de Radiomessagerie du compte utilisateur: " & UCase(setUserAccontName) & " est: " & strResult
        Else
            Wscript.Echo "Le numéro de Radiomessagerie n'a pas été trouvé"
    End If
    Dernière modification par ProgElecT ; 30/05/2017 à 18h23. Motif: Souci avec les balises code? oui, source non ANSI

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 08/01/2016, 17h34
  2. Réponses: 0
    Dernier message: 31/07/2011, 19h30
  3. [active directory] Gestion des PC clients
    Par m_jaz3 dans le forum Windows Serveur
    Réponses: 2
    Dernier message: 26/03/2007, 00h09
  4. [Active Directory]Gestion des groupes d'accès à un site web
    Par apoingsfermes dans le forum Accès aux données
    Réponses: 4
    Dernier message: 06/03/2007, 09h58
  5. Réponses: 2
    Dernier message: 13/02/2007, 12h13

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