[VBS] Modification user Active Directory

Bienvenida Messages postés 80 Statut Membre -  
Bienvenida Messages postés 80 Statut Membre -
Bonjour,
Je dois créer un script VBS qui change l'adresse du profil itinérant.
J'ai récupéré ce code sur ce site : http://www.laboratoire-microsoft.org/a [...] quotas/0/#st4
Voici mon code :

Set objUser = GetObject _
("LDAP://cn=mon_pseudo,ou=Unités,ou=LABO,ou=Utilisateurs,dc=ss-dom,dc=dom,dc=local")

strCurrentProfilePath = objUser.Get("profilePath")
intStringLen = Len(strCurrentProfilePath)
intStringRemains = intStringLen - 11
strRemains = Mid(strCurrentProfilePath, 12, intStringRemains)
strNewProfilePath = "\\Snoopy\Users\%Username%" & strRemains
objUser.Put "profilePath", strNewProfilePath
objUser.SetInfo

Je n'ai jamais fait de VBS donc je bidouille.
Voici le message d'erreur que j'ai dans une fenêtre :
Scripts : G\profil_itinerant.vbs
Ligne : 1
Caract. : 1
Erreur : Cet objet ne se trouve pas sur le serveur.
Code : 80072030
Source : null

Le code doit normalement marcher, voici les bons paramètres à utiliser :
Nom de domaine : ss-dom.dom.local
CN : Prénom Nom ou pnom (aucun des 2 ne marche)
Nouvelle adresse du profil : \\Snoopy\Users\%username%
L'utilisateur se trouve dans l'OU Utilisateurs, lui même dans l'OU LABO lui-même dans l'OU Unités

Où est l'erreur ?
Cordialement,

[EDIT]2ème question :
D'après le lien plus haut, il est possible de faire une boucle pour changer l'adresse du profil itinérant de tous les utilisateurs d'un même OU, comment est-ce possible ? Pour parcourir la liste des utilisateurs, on utilise quelle variable ?
A voir également:

1 réponse

Bienvenida Messages postés 80 Statut Membre 4
 
J'ai trouvé la solution mais un autre problème se pose. En fait, l'ordre des OU n'était pas le bon. Voici le vrai bon code :

Set objUser = GetObject _
("LDAP://CN=Marin Dauriat,OU=Utilisateurs,OU=MICALIS,OU=Unités,DC=jouy,DC=inra,DC=local")

strCurrentProfilePath = objUser.Get("profilePath")
intStringLen = Len(strCurrentProfilePath)
intStringRemains = intStringLen - 11
strRemains = Mid(strCurrentProfilePath, 12, intStringRemains)
strNewProfilePath = "\\Snoopy\Users\%Username%" & strRemains
objUser.Put "profilePath", strNewProfilePath
objUser.SetInfo

Lorsque je l'exécute, voici le nouveau message d'erreur :
Scripts : G\profil_itinerant.vbs
Ligne : 4
Caract. : 1
Erreur : La propriété répertoire n'est pas présente dans le cache.
Code : 8000500D
Source : Active Directory

D'où vient le problème ?

Cordialement,
0