2014-09-29 2 views
1

나는 내 스케줄러에 vbscript를 첨부하여 프로그램 (예 : Google 크롬)을 여는 즉시 백그라운드에서 매크로를 실행합니다. 태스크 스케줄러를 살펴본 결과 관리 메시지 나 오류가 아닌 다른 프로그램을 열 때 이벤트를 트리거하는 기능을 찾을 수 없습니다. 멍청한 질문에 대해 유감스럽게 생각합니다!다른 프로그램을 열 때 vbscript를 실행하도록 작업 스케줄러를 구성하는 방법은 무엇입니까?

+0

가장 쉬운 해킹 - (1) 먼저 실행할 프로그램, (2) 다른 프로그램 (Chrome) 및 시작 메뉴에 넣기/넣기 등의 '.bat'파일을 만드는 것이 어떨까요? Chrome이 아닌 해당 파일의 바로 가기? –

+0

안녕하세요, Bustos - 고마워요. 좋은 해결책이긴하지만, 내가 필요한 것은 프로그램의 다른 인스턴스를 기반으로 실행되는 서로 다른 스크립트에 대한 것입니다. 예를 들어 Adobe Acrobat을 실행중인 경우 한 개의 pdf를 열어 하나의 vbscript를 트리거하고 다른 pdf를 다른 pdf로 트리거하고 싶습니다. – twilexia

+0

감사를 켜고 감사 할 수 있도록 chromre를 설정하십시오. 그런 다음 이벤트 뷰어의 보안 로그에 이벤트로 나타납니다. – Noodles

답변

0

Windows SDK WMI 섹션의 내용입니다. http://msdn.microsoft.com/en-us/library/aa392396(v=vs.85).aspx

이 프로그램은 6 (i = 0-5) 프로그램 시작 및 종료를 모니터링합니다.

strComputer = "." 
Set objWMIService = GetObject("winmgmts:\\" _ 
    & strComputer & "\root\CIMV2") 
Set objEvents = objWMIService.ExecNotificationQuery _ 
    ("SELECT * FROM Win32_ProcessTrace") 

Wscript.Echo "Waiting for events ..." 
i = 0 
Do Until i=5 
    Set objReceivedEvent = objEvents.NextEvent 
    'report an event 
    Wscript.Echo "Win32_ProcessTrace event occurred" & VBNewLine _ 
     & "Process Name = " _ 
      & objReceivedEvent.ProcessName & VBNewLine _ 
     & "Process ID = " _ 
      & objReceivedEvent.Processid & VBNewLine _ 
     & "Session ID = " & objReceivedEvent.SessionID 
i = i+ 1 
Loop 
관련 문제