Posez votre question Signaler

Exécuter un bat à partire d'un vbs [Résolu]

admininfo 331Messages postés 27 juillet 2009Date d'inscription 24 avril 2012Dernière intervention - Dernière réponse le 3 nov. 2011 à 08:42
Bonjour,
voila j'ai un problème je veut lancer un batch à partir d'un vbs
je vous explique j'ai créer un batch qui va appeler un vbs ce vbs va dire si tu est dans ce groupe exécute ce script si tu est dans ce groupe exécute ce scripte j'ai tout bien fait mais ça ne fonctionne pas et je ne trouve pas l'erreur pouvez vous m'aider ??
voila mon vbs
Sub testpresence
Set WshShell = CreateObject("WScript.Shell")
Set args = WScript.Arguments
Utilisateur=""
NomCn = UCase(args(0))
Set objGroup1 = GetObject("LDAP://CN="&NomCn&",OU=USERACCOUNTS,OU=ou,DC=fr,DC=dc,DC=COM")
objGroup1.GetInfo
arrMemberOf = objGroup1.GetEx("memberof")
Var = False
For Each strMember in arrMemberOf
Select Case strMember
Case "CN=groupe,OU=Global,OU=Security,OU=ou,DC=fr,DC=dc,DC=com" var=True : Exit For
Case Else Var=False
End Select
Next
If Var = True Then
Set WshShell = CreateObject("WScript.Shell")
Wshshell.run "\\mon\adresse\log.bat","True"
End If
End Sub
donc la il est cencé me lancer le .bat qui correspond au groupe mais il ne le fait pas ???
Lire la suite 

Exécuter un bat à partire d'un vbs »

8 réponses
Réponse
+0
moins plus
Bonjour,

Je ne suis pas un pro de VBS, mais je vois plusieurs points d'achoppement possible :

- var=True C'est le seul endroit où tu utilises var en minuscule ;
- Case "CN=groupe,OU=Global,OU=Security,OU=ou,DC=fr,DC=dc,DC=com" : es-tu sûr d'avoir un strMember qui valle exactement ça ?

dans ta boucle FOR, essaie de faire un
WScript.Echo strMember

pour voir exactement ce qu'il y a dans cette variable à chaque itération...

Xavier
Ajouter un commentaire
Réponse
+0
moins plus
var pas de soucie à ce niveau

pour CN=groupe,OU=Global,OU=Security,OU=ou,DC=fr,DC=dc,DC=com"

je l'ai modifier pour pas que tout le monde voie les ou

je vais essayer ta dernière option
Ajouter un commentaire
Réponse
+0
moins plus
merci dsl
Ajouter un commentaire
Réponse
+0
moins plus
ça me créer une box mais ne m'affiche rien
Reivax962- 2 nov. 2011 à 15:56
Ça t'ouvre une fenêtre ? Tu ne l'exécutes pas en console alors ?

En tout état de cause, je suis désolé mais je ne maîtrise ni suffisamment les LDAP ni le VBS pour t'aider plus... Je reste persuadé que le problème se situe dans ton SELECT CASE, mais sans connaissance plus approfondie de ce que renvoie l'appel au LDAP...

Xavier
admininfo- 2 nov. 2011 à 16:01
bah le truc bizard c'est que sans le renvoie vers le fichier batch ca fonctionne parfaitement puisque j utilise ce select case dans mes logon et il fonctionne trés bien comme ca j'ai juste intégrer le renvoie qui lui ausi fonctionne trés bien tous seule mais réunis il ne fonctionne plus c'est trop bizard
Ajouter un commentaire
Réponse
+0
moins plus
en faite la commande seule Set WshShell = CreateObject("WScript.Shell")
Wshshell.run "\\mon\adresse\log.bat","True"


fonctionne mais ne marche pas avec les condition autour je voudrais la faire fonctionner au milieu de ses conditions pour qu'en fonction du groupe il me démarre tel ou tel script
Ajouter un commentaire
Réponse
+0
moins plus
pas d'idée
Ajouter un commentaire
Ce document intitulé « exécuter un bat à partire d'un vbs » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.
Dossier à la une
Passage au tout numérique : quel coût pour les particuliers ?