[VBS] ifmember en vbs je reste sans explications

ifmember en vbs je reste sans explications [VBS] - VB/VBA/VBS - Programmation

Marsh Posté le 11-10-2005 à 14:39:25    

bonjour tout le monde,  
 
je travail sur un script de connexion en vbs qui doit déterminer l'appartenance d'un utilisateur a un groupe.
 
Je connais le programme ifmemnber.exe de microsoft qui fonctionne tres bien cependent je dois le traduire en vbs !
 
je vous présente mon programme :
 
 
ON ERROR RESUME NEXT
Dim strUserDN, objSysInfo
 
set WshShell = CreateObject("WScript.Shell" )  
Set WshNetwork = WScript.CreateObject("WScript.Network" )  
Set objSysInfo = CreateObject("ADSystemInfo" )
 
LogonServer=WshShell.ExpandEnvironmentStrings("%LogonServer%" )  
MsgBox LogonServer
 
strUserDN = objSysInfo.userName
MsgBox strUserDN  
 
Set UserObj = GetObject("WinNT://" & strUserDN)
 
MsgBox "Bonjour "&WshNetwork.username&" connecté sur "&WshNetwork.computername  
 
'Init Groups  
Dim UserGroups  
Dim GroupObj  
UserGroups=""  
For Each GroupObj In UserObj.Groups  
UserGroups=UserGroups & "[" & GroupObj.Name & "]"  
Next  
 
MsgBox "Membre de "& UserGroups  
 
if InGroup("Admin" ) then  
MsgBox "administrateurs"
end if
 
Function InGroup(strGroup)  
InGroup=False  
If InStr(UserGroups,"[" & strGroup & "]" ) Then  
InGroup=True  
End If  
End Function

 
J'affiche bien le nom d'utilisateur, la chaine UserObj est correcte (avec nom utilisateurs, domaine groups) par contre la message box "Membre de "& UserGroups n'affiche pas le groupe, je n'arrive pas a sortir les groups de UserObj la propriété UserObj.Groups ne dois pas etre correcte, j'ai cherché partout sur le net, regarder tous les tutos, tous les exemples a cahque fois l'on procède de la meme facon mais perso ca ne fonctionne pas chez moi !
 
j'ai essayer sous XP et 2000 impossible !
 
merci de votre précieuse aide !

Reply

Marsh Posté le 11-10-2005 à 14:39:25   

Reply

Marsh Posté le 11-10-2005 à 14:43:39    

vire le "On error resume next" au début de ton script et regarde s'il te renvoit une erreur


---------------
"I wonder if the internal negative pressure in self pumping toothpaste tubes is adjusted for different market altitudes." John Carmack
Reply

Marsh Posté le 11-10-2005 à 14:50:46    

ben aucune erreur en enlevant le "On error resume next" !

Reply

Marsh Posté le 11-10-2005 à 15:19:13    

ok je developpe sur winxpsp2 en ce moment meme, et je viens d'essayer sur windows 2000 et la ca me met un message d'erreur, a la place de mettre  
Set UserObj = GetObject("WinNT://" & strUserDN) je dois mettre Set UserObj = GetObject("LDAP://" & strUserDN)
et sous windows 2000 j'arrive maintenant a afficher la liste des groups !
par contre sous windows xp cela ne fonctionne toujours pas !


Message édité par mims1664 le 11-10-2005 à 15:33:07
Reply

Marsh Posté le 11-10-2005 à 15:46:29    

uppla

Reply

Marsh Posté le 11-10-2005 à 15:47:08    

bon que ca ne fonctionne pas sous windows XP ne m'est pas encore trop blaquant pour le moment, en faite maintenant je n'arrive pas a tester le groupe !

Reply

Marsh Posté le 11-10-2005 à 17:02:34    

sous xp c normal. les groupes sont fait sur des serveurs normalement NT4, 2000 ou 2003 server.

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed