2013-02-25 6 views
1

.vbs 스크립트를 사용하여 날짜 인수와 함께 .exe를 실행하고 싶습니다. 날짜 인수는 "다음 날짜"입니다. 아래에서이 스크립트를 시도했지만 오류가 발생했습니다 : 날짜가 올바르지 않습니다..exe에 날짜 인수 전달

왜?

Set WshShell = CreateObject("WScript.Shell") 

NextDayDate = DateAdd("d",1,dtmStart) 
WshShell.Run """C:\stmt.exe"" DATE=NextDayDate 

답변

3

VBScript는 변수 보간을 수행하지 않습니다. 당신은 단순히 문자열

Set WshShell = CreateObject("WScript.Shell") 

NextDayDate = DateAdd("d",1,dtmStart) 
WshShell.Run """C:\stmt.exe"" DATE=" & NextDayDate 

(즉 실행 파일에 따라 달라질 수 있지만) 당신은 날짜가에 공백이있는 경우 따옴표를 포함해야 끝에 일을 연결해야합니다.

WshShell.Run """C:\stmt.exe"" DATE=""" & NextDayDate & """" 
+0

도움 주셔서 감사합니다. DATE = "& NextDayDate에 오류가 있습니다. 그러나 인용 부호를 꺼낸 후에는 –

+0

+1이 반환됩니다. 특히 * 양쪽 * 문자열 확장이 정확한 wrt 따옴표 및 연산자이기 때문에 –

+0

실행 경로 주위의 따옴표가 오히려 (Qq = Chr (34) & str & Chr (34) : End Function')을 인용 부호로 둘러싼 것보다 인용 부호를 사용하는 것이 더 낫다. . "... DATE ="& qq (NextDayDate)'는''... DATE = "" "& NextDayDate &" "" "'보다 훨씬 읽기 쉽다고 생각합니다. –