몇 가지 도움을주십시오. 배치 파일과 vbscript로 초보자입니다. 내 문제를 해결하도록 도와 주시면 감사하겠습니다. 을 감안할 때vbscript를 사용하여 배치 파일의 종료 값 가져 오기
:
A :
@echo off
pushd "C:\Program Files\appName" && popd
IF ERRORLEVEL 1 EXIT 0
pushd "C:\Program Files\appName"
IF EXIST application.exe GOTO Installed
popd
EXIT 1
:Installed
EXIT 2
B :
Set objFSO = CreateObject("Scripting.FileSystemObject")
'Set objFile = objFSO.OpenTextFile(listFile, 1)
dim sh , res
objName = objFSO.GetTempName
objTempFile = objName
'---- Sample Code 0 ----------------------'
'set sh = WScript.CreateObject("WScript.shell")
'res = sh.run("fileFullPath",0,true)
'wScript.echo res
'----Sample Code 1 ---------------'
'set sh = WScript.CreateObject("WScript.shell")
'res = sh.run("fileName",0,true)
'wScript.echo res
'---- Sample Code 2 ---------------------
'set sh = WScript.CreateObject("WScript.shell")
'res = sh.run("cmd /c fileName",0,true)
'wScript.echo res
'---- Sample Code 3 ---------------------
'set sh = WScript.CreateObject("WScript.shell")
'res = sh.run("cmd /c fileFullPath",0,true)
'wScript.echo res
B 조 : 나와 함께 1 개 & 2 작품 미세 샘플 코드하지만 샘플 코드 0 & 3이 필요합니다. 샘플 코드 1 항상 오류가 발생 함 : 선택한 파일을 찾을 수 없습니다. , 샘플 코드 사용 중 3 실패하면 0을 반환하고 성공하면 1을 반환하고 배치 파일의 반환 값은 반환하지 않습니다.
고마워,
예제 코드 3은 테스트 할 때 정상적으로 작동했습니다. 그러나 종료 코드 0은 일반적으로 "성공"을 의미하므로 오류가 발생하면 반환하지 않아야합니다. 나는 또한 단지'exit' 대신'exit/b'를 사용할 것을 권장합니다. –
@AnsgarWiechers 응답에 감사드립니다. 이전에'exit/b'를 사용하려했으나 여전히 작동하지 않습니다. 내가 검색 할 파일이 존재한다는 것을 고려하면. 샘플 코드 1 및 2는 2의 값을 제공합니다. 샘플 코드 3을 사용하는 동안 출력을 1로 유지하는 배치 파일의 전체 경로를 지정했습니다. 배치 파일에 전체 경로로 액세스해야한다는 이유로 주어진 샘플 코드 1 및 2와 동일한 결과를 얻는 방법이 있습니까? 감사. – JSun
코드 1과 2는 배치 스크립트가 현재 작업 디렉토리에있는 경우에만 작동해야합니다. 그 외에 4 개의 샘플 모두 동일한 결과를 산출해야합니다. 증거를 제공해주십시오. –