2009-05-05 9 views
-1

シンプルなvbScriptで少し問題があります。スクリプトは2つのアクションを1つずつ実行する必要があります。1 vbsで2コマンドの問題

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 

誰かが間違っていることを教えてもらえますか?

申し訳ありませんが、宣言はコピー/過去にありませんでした。そして、ウィンドウズは静かにシャットダウンした後、その結果はうまくいきません!

+1

あなたは間違っているものを教えてください。間違いはありますか?それは静かに失敗しますか?最初のアクションは実行されますが、2番目のアクションは実行されません。2番目のアクションは実行されますが、最初のアクションは実行されません。より多くの情報をお願いします。 –

+1

残念ながら、私たちはそれを修正する手助けしかできませんが、あなた自身に何が間違っているか教えてください。言い換えれば、なぜあなたは何かが間違っていると思いますか?あなたが望んだことはしませんか?それはクラッシュしますか?それは間違った結果を生み出しますか?私たちは何かを続ける必要があります。 –

+0

今日はフランス語を堪能できませんか?なぜあなたはそれに年を格納していますか? – paxdiablo

答えて

1

これは実際のコードですか?それに少なくとも2個の構文エラーがあります。

まず構文エラー:

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

行の最後に欠落している二重引用符があります。

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

2番目の構文エラー:

Dim resultat 
Dim commande 
Dim Jour 

変数 "commande2"が使用されていますが、宣言されていません。使用:

Dim resultat 
Dim commande 
Dim commande2 
Dim Jour 

これで問題が解決しない場合、他の人からも分かっているように、問題点を教えてください:エラーメッセージ?間違った行動?

第二の試み

はたぶん、彼らは適切なコンテンツが含まれていることを確認することができるようにそれらを実行する前に使用されるコマンドを表示:

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