source

vba의 셸()을 사용하여 매개 변수로 .exe를 실행하는 방법은 무엇입니까?

ittop 2023. 4. 27. 22:47
반응형

vba의 셸()을 사용하여 매개 변수로 .exe를 실행하는 방법은 무엇입니까?

아래 예시와 같이 구성된 대상 파일 경로가 있습니다.

C:\Program Files\Test\foobar.exe /G

제가 해야 할 일은 VBA를 사용하여 이 파일을 실행할 수 있어야 합니다.shell()지휘권

파일 경로의 형식을 지정하려면 어떻게 해야 합니까?Shell().exe 실행과 함께 호출해야 하는 인수가 있습니다.

제가 읽거나 시도한 것은 아래와 같이 결과가 오른쪽에 있습니다.

file = """C:\Program Files\Test\foobar.exe"" /G"    <---Bad file name or number (Error 52) 
shell(file)

file2 = "C:\Program Files\Test\foobar.exe /G"       <---file never found
shell(file2)

셸()을 사용하여 다른 .exe를 실행하는 데 성공했기 때문에 VBA나 기능에 문제가 없다는 것을 알고 있습니다.

예:

works = "C:\Program Files\Test\test.exe"
shell(works)

추가 매개 변수가 필요한 파일을 실행하는 과정에 대해 특별히 잘 알지 못하므로, 제가 말을 놓치거나 더 많은 정보가 필요하면 알려주시기 바랍니다.

이 기능은 다음과 같습니다(Excel 2013).

Public Sub StartExeWithArgument()
    Dim strProgramName As String
    Dim strArgument As String

    strProgramName = "C:\Program Files\Test\foobar.exe"
    strArgument = "/G"

    Call Shell("""" & strProgramName & """ """ & strArgument & """", vbNormalFocus)
End Sub

여기 https://stackoverflow.com/a/3448682 에서 영감을 얻었습니다.

다음은 VBA에서 Shell을 사용하는 몇 가지 예입니다.
Chrome에서 열린 스택 오버플로입니다.

Call Shell("C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" & _
 " -url" & " " & "www.stackoverflow.com",vbMaximizedFocus)

텍스트 파일을 엽니다.

Call Shell ("notepad C:\Users\user\Desktop\temp\TEST.txt")

일부 응용 프로그램을 엽니다.

Call Shell("C:\Temp\TestApplication.exe",vbNormalFocus)

이것이 도움이 되길 바랍니다!

아래 코드는 엑셀에서 .exe 파일을 자동으로 여는 데 도움이 될 것입니다...

Sub Auto_Open()


    Dim x As Variant
    Dim Path As String

    ' Set the Path variable equal to the path of your program's installation
    Path = "C:\Program Files\GameTop.com\Alien Shooter\game.exe"
    x = Shell(Path, vbNormalFocus)

End Sub
sTempBAT = "d:\tempLog.txt"    
Set shellwindows = GetObject("new:9ba05972-f6a8-11cf-a442-00a0c90a8f39")
Set itemobj = shellwindows.Item()
itemobj.document.Application.ShellExecute sTempBAT, "", "", "open", 0

셸 함수 https://blog.sevagas.com/IMG/pdf/bypass_windows_defender_attack_surface_reduction.pdf 를 호출하는 대체 방법

언급URL : https://stackoverflow.com/questions/20917355/how-do-you-run-a-exe-with-parameters-using-vbas-shell

반응형