2016-10-20 2 views
0
배치 파일에서

나는 아래의 명령이 있습니다명령 줄을 사용하여 명령 프롬프트 창에서 VBScript를에서 ECHO를 표시하는 방법

WScript ABC.vbs 

ABC.vbs에서 : 나는 배치 파일을 실행하면

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

있다 텍스트 "Hello"가있는 팝업 메시지. 하지만 내가 원하는 것은 ABC.vbs을 마우스 오른쪽 단추로 누른 다음 "명령 프롬프트로 열기"를 선택하면 명령 프롬프트 창에 "Hello"라는 메시지가 표시됩니다.

+2

'wscript'를'cscript'로 변경하십시오. –

+0

대신'cscript/nologo ABC.vbs'를 사용하십시오. – Lankymart

답변

1

cscript.exe ABC.vbs을 명령 줄로 사용하는 두 가지 주석 외에도 .vbs 스크립트에 넣을 수있는 함수가있어 cscript 엔진이 실행되는 방식과 관계없이 항상 실행되도록합니다. 이 사이트에서

Sub checkengine 
    pcengine = LCase(Mid(WScript.FullName, InstrRev(WScript.FullName,"\")+1)) 
' BEGIN CALLOUT A 
    If Not pcengine="cscript.exe" Then 
    Set WshShell = CreateObject("WScript.Shell") 
    WshShell.Run "CSCRIPT.EXE """ & WScript.ScriptFullName & """" 
    WScript.Quit 
    End If 
' END CALLOUT A 
End Sub 

는 : Forcing VBScript Files to Run in CScript Mode

은 VBScript를의 시작 부분에 Call checkengine을 넣습니다. cscript.exe가 명령 줄에 없다는 것을 감지하면 해당 엔진으로 스크립트를 다시 시작합니다.

관련 문제