2009-08-27 9 views
22

VBScript를 사용하여 로컬 시스템에서 프로그램을 실행해야합니다. 하지만 구문에 문제가 있습니다. 이것은 내가 지금 사용하고있는 것입니다. -경로에 공백이 포함 된 프로그램 시작

Dim objShell 
Set objShell = WScript.CreateObject("WScript.Shell") 
objShell.Run("iexplore") 
Set objShell = Nothing 

위의 코드는 IE를 성공적으로 시작합니다. 나는 다른 브라우저를 시작하고 싶다. 하지만, 내가 사용하는 경우 -

Dim objShell 
Set objShell = WScript.CreateObject("WScript.Shell") 
objShell.Run("c:\Program Files\Mozilla Firefox\firefox.exe") 
Set objShell = Nothing 

파일 또는 경로를 찾을 수 없다는 오류가 발생합니다. Run() 함수의 매개 변수가 어떻게 취해질 지 확신하지 못합니다. EXE 경로를 지정해야합니까? 아니면 DOS 명령을 사용해야합니까?

답변

43

시도 : -

Dim objShell 
Set objShell = WScript.CreateObject("WScript.Shell") 
objShell.Run("""c:\Program Files\Mozilla Firefox\firefox.exe""") 
Set objShell = Nothing 

참고 문자열에 추가 ""의. exe에 대한 경로는 공백을 포함하기 때문에 따옴표로 묶어야합니다. (이 경우 단순히 "firefox.exe"를 사용하면됩니다).

또한 많은 프로그램이 64 비트 버전의 Windows에서 c : \ Program Files (x86) 폴더에 있음을 유념하십시오.

+1

안녕하세요, 감사합니다. 따옴표와 혼동 스러웠습니다 : D 한 메모 - 단순히 "firefox.exe"를 사용하면 작동하지 않았습니다. –

+4

당신은'objShell.Run (""% ProgramFiles % \ Mozilla Firefox \ firefox.exe "" ")'를 사용하여 64 비트 문제를 해결할 수 있습니다. –

+2

Jack이 아닙니다. Firefox는 여전히 % ProgramFiles (x86) % 아래에 설치 될 수 있습니다. – mgr326639

-10

폴더를 복사하십시오. firefox.exe는 c : \에만 있습니다. 스크립트가 파일 트리를 등반하는 데 어려움을 겪고 있습니다. C : \에 * .exe 파일을 놓았을 때 "파일을 찾을 수 없습니다."라는 오류 메시지가 제거되었습니다.

+4

FS 루트에 모든 것을 넣는 것은별로 좋지 않습니다. –

+3

그 해결책은 다른 문제들로 가득 찼습니다. 상상해보십시오. 두 프로그램 모두'common.dll'이라는 파일을 가지고 있습니다. –

3

당신 밴 당신이 iexplore.exe를 예제를 실행하려면 응용 프로그램과 firefox.exe 제거 .EXE에 대한 .exe 파일을 찾을 수 Exec에서

Dim objShell 
Set objShell = WScript.CreateObject("WScript.Shell") 
objShell.Exec("c:\Program Files\Mozilla Firefox\firefox.exe") 
Set objShell = Nothing 
+1

이 답변은 위의 것과 동일 합니다만, 프로그램 이름 주위에 큰 따옴표가 포함되어 있지 않으므로 약간 잘못되었습니다. –

+1

이 답변은 위의 답변과 거의 동일합니다. 단, 여러 따옴표가 필요 없으며 작동합니다. –

+0

실행은 C : \ Users \ user \ Appdata \ Local의 프로그램을 시작할 수 없지만 실행은 거기에서 시작할 수 있습니다. (TeamSpeak 3가 거기서 설치됩니다. 적어도 그랬습니다.) –

1
Set objShell = WScript.CreateObject("WScript.Shell") 
objShell.Run("firefox") 
Set objShell = Nothing 

+0

의도 한대로 입력하지 않았습니다. 그냥 엉망진창이야. 적절한 들여 쓰기가있는 페이지에 비슷한 대답이 있습니다. –

1

을 시도하십시오 사용 objShell.Run ("firefox")에서 사용하십시오.

이 정보가 도움이되기를 바랍니다.

3

Set WSHELL = CreateObject("Wscript.Shell") 
WSHELL.Exec("Application_Path") 

와 함께 일하고 그러나 우리는

예를 들어, 인터넷의 경우

WSHELL.Run("iexplore") 
1
set shell=CreateObject("Shell.Application") 
' shell.ShellExecute "application", "arguments", "path", "verb", window 
shell.ShellExecute "slipery.bat",,"C:\Users\anthony\Desktop\dvx", "runas", 1 
set shell=nothing 
0

Explorer를 응용 프로그램 이름을 입력 할 경우 파라미터해야한다 당신이 달성하고자하는 것은 간단하며, 당신이가는 길은 쉽지 않습니다. 이 시도 (잘 작동) 및 텍스트 편집기에서 배치 파일을 저장하십시오. 날 믿어, 더 쉬워.

start firefox.exe 
관련 문제