2009-05-05 9 views
-1

J'ai un petit problème avec un simple vbScript. Le script doit exécuter 2 actions l'une après l'autre.Problème avec 2 commande dans 1 vbs

Option Explicit 

Dim WshShell 
Dim Yesterday 
Dim resultat 
Dim commande 
Dim Jour 

Set WshShell = WScript.CreateObject("WScript.Shell") 

Yesterday = DateAdd("d", -2, Date()) 
resultat = "00001" 
resultat = resultat & Right(Year(Yesterday), 2) 
Jour = (Datepart("y", Yesterday)) 

If ((Jour < 100) and (Jour > 9)) Then resultat = resultat & "0" & Jour 

If (Jour < 10) Then resultat = resultat & "00" & Jour 

If (Jour >= 100) Then resultat = resultat & Jour 

resultat = """(&(objectClass=eTGlobalUser)(eTSuspended=0)(eTRoleDN=*)(eTUpdateDate>=" & resultat & "))""" 

commande = GetScriptPath() & "PharosGDH.exe /ldapfilter:" & resultat & " /conso" 
WshShell.Run commande, 5, true 
commande2 = GetScriptPath() & "PharosGDH.exe /all /auditPharos 
WshShell.Run commande2, 5, true 
WScript.Quit 1 

Function GetScriptPath() 
    GetScriptPath = Left(WScript.ScriptFullName, InStrRev(WScript.ScriptFullName, "\")) 
End Function 

Quelqu'un peut-il me dire ce qui ne va pas s'il vous plaît?

Désolé la déclaration manquait sur la copie/passé, Et les fenêtres juste arrêtent silencieusement, après que je vois que le résultat n'est pas il a été supposé être!

+1

Pouvez-vous nous dire quel est le problème? Avez-vous une erreur? Est-ce qu'il échoue silencieusement? Est-ce que la première action est exécutée mais pas la seconde, la deuxième action est-elle exécutée, mais la première pas? Plus d'informations s'il vous plaît. –

+1

Malheureusement, nous ne pouvons que vous aider à le résoudre, mais vous devez nous dire ce qui ne va pas. En d'autres termes, pourquoi pensez-vous que quelque chose ne va pas? Ne fait-il pas ce que tu espérais? Est-ce que ça plante? Est-ce que cela produit de mauvais résultats? Nous avons besoin de quelque chose pour continuer. –

+0

Est-ce que le jour n'est pas français? Pourquoi gardez-vous l'année dedans? – paxdiablo

Répondre

1

Est-ce votre code actuel? Il y a au moins deux erreurs de syntaxe dans ce:

Première erreur de syntaxe:

commande2 = GetScriptPath() & "PharosGDH.exe /all /auditPharos 

Il y a des guillemets doubles manquants à la fin de la ligne:

commande2 = GetScriptPath() & "PharosGDH.exe /all /auditPharos" 

erreur deuxième syntaxe:

Dim resultat 
Dim commande 
Dim Jour 

La variable "commande2" est utilisée, mais pas déclarée. Utilisation:

Dim resultat 
Dim commande 
Dim commande2 
Dim Jour 

Si cela ne résout pas votre problème, comme les autres l'ont dit, s'il vous plaît nous dire, quel est le problème: Message d'erreur? Mauvais comportement?

Deuxième tentative

afficher Peut-être que les commandes utilisées avant de les exécuter pour pouvoir vérifier qu'ils contiennent le bon contenu:

commande = GetScriptPath() & "PharosGDH.exe /ldapfilter:" & resultat & " /conso" 
WshShell.Popup commande 
WshShell.Run commande1, 5, true 
commande2 = GetScriptPath() & "PharosGDH.exe /all /auditPharos" 
WshShell.Popup commande 
WshShell.Run commande2, 5, true 
WScript.Quit 1 
Questions connexes