2013-11-01 2 views
0

이 코드가 있습니다. 도메인 환경에서 원격 컴퓨터의 VBScript 공유 프로그램을 통해 실행하고 싶습니다. 첫 번째 부분은 컴퓨터 이름을 입력하라는 메시지가 표시되는 곳이지만 문제는 두 번째 부분입니다. 첫 번째 부분에서 입력 한 원격 컴퓨터에서 프로그램을 실행하는 방법을 모르겠습니다.특정 원격 컴퓨터에서 프로그램을 실행하는 방법

computer = inputbox ("What computer do you wish to check? (Press Enter if this computer)","Computer") 

set WMI = GetObject("WinMgmts://" & computer) 

If computer="" then computer = "this computer" 



Dim objShell 

Set objShell = WScript.CreateObject("WScript.Shell") 

objShell.Run("""\\compname\Share\progr.exe""") 

Set objShell = nothing 

이 스크립트를 실행하면 원격 컴퓨터가 아니라 내 컴퓨터에서 프로그램이 실행됩니다. 키보드에서 입력 한 특정 컴퓨터에서 프로그램을 실행하고 싶습니다.

답변

0

vbscript에서 더 좋은 방법은 wmi를 사용하는 것입니다. wmi를 통해 원격 컴퓨터에 연결하는 방법과 문제를 해결하기위한 완벽한 정보를 얻으려면 this을 참조하십시오.

microsoft 페이지의 정보를 따르면 원격 컴퓨터의 WMI 서비스를 가리키는 objWMIService 변수로 끝납니다. 그런 다음,

Set objProcess = objWMIService.Get("Win32_Process") 

Dim strProcess 
    strProcess = "notepad.exe" 

Dim lngReturn, intPID 
    lngReturn = objProcess.Create(strProcess, null, null, intPID) 

    If lngReturn = 0 Then 
     Wscript.Echo strProcess + " started. PID: " & intPID 
    Else 
     Wscript.Echo "Error: " & lngReturn 
    End If 

사용 objWMIService는 (원격 기계의) 프로세스의 컬렉션에 대한 참조를 가져, 새로운 프로세스를 생성하는 (그 원격 시스템을 기억).

+0

원격 호스트에 대한 WMI 연결을 설정하는 것이 한 가지 추가 행입니다. 대답을 자급 자족하게하려면이 여분의 줄을 추가해야합니다. MSDN 페이지에 대한 참조는 더 깊은 통찰력을 얻는 데 유용하지만 답변을 통해 작동 해결책을 얻으려는 OP가 따를 필요는 없습니다. –

+0

가장 간단한 형태로, 당신은 1 줄에 맞습니다.하지만 사용자가 자격 증명을 제공해야하는지, 아니면 요구 사항이 필요한지 여부는 알 수 없습니다. 각 옵션의 이유 및 요구 사항은 코드 샘플을 포함하여 MSDN에서 더 잘 설명되며 OP는 필요한 경우 설명을 요청할 수 있습니다. –

관련 문제