2012-03-23 3 views
0

응용 프로그램 창이 닫힐 때를 감지해야하는 상황이 있습니다. 현재 앱이 실행 중인지 확인하기 위해 작업 관리자를 찾고 있습니다.VBScript 및 Windows 셸 창 이벤트를 감지하는 방법

하지만 이제 앱 창이 닫히면 사용자 또는 다른 프로세스에 의해 발생한 이벤트인지 확인해야합니다.

그럼 어떻게 vbscript 내에서 창 이벤트에 연결할 수 있습니까?

답변

0

WMI를 사용하여 VBScript에서 프로그램이 멈 추면 모니터링 할 수 있습니다. 꽤 간단합니다. 중지 될 때 실행되는 이벤트 구동 스크립트를 설정할 수도 있습니다. 그것은 다음과 같습니다

strProcess = "someprocess.exe" 

strComputer = "." 
Set objWMIService = GetObject("winmgmts:" _ 
    & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2") 

Set colEvents = objWMIService.ExecNotificationQuery(_ 
    "SELECT * FROM __InstanceDeletionEvent WITHIN 1 " _ 
     & "WHERE TargetInstance ISA CIM_Process " _ 
      & "AND TargetInstance.Name='" & strProcess & "'") 

While True 
    ' Process stopped 
Wend 

Set colEvents = Nothing 
Set objWMIService = Nothing 

문제는이 중지하거나 특정 프로그램이 이벤트를 발생 또는 이벤트 로그에 기록하지 않는 한 어떤 조치가 발생하는 이유 을 감지 할 수있는 방법 (또는 다른 로그가 없다는 것입니다 그 문제에 대한). 죄송합니다.