일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- ASMR
- 넷플릭스
- Streaming
- Firebase
- Flutter
- Coroutine
- Android
- 이모지메모
- 공부집중
- 1인개발자
- 소울칼리버6
- 파이썬
- 이모지
- 명심보감
- Linux
- 오픈소스
- FSM
- 장자명언
- androidx
- DART
- 코틀린
- kotlin
- 공자명언
- bash
- recyclerview
- Freesound
- 좋은글필사하기
- jetpack compose
- 벤자민플랭클린
- 명언모음
Archives
- Today
- Total
Vintage appMaker의 Tech Blog
WindowProcessMonitor 본문
WindowProcessMonitor
https://github.com/VintageAppMaker/WindowProcessMonitor
목적
윈도우에서는 Windows Management Instrumentation (WMI)라는 Interface를 제공한다. WMI를 짧게 설명하자면 윈도우 관리에 관련된 전반의 기능을 SQL과 같은 질의문으로 처리할 수 있도록 한, COM 엔진이라고 보면 된다. 예상외로 상당히 방대한 내용의 윈도우 정보(OS에서 관리하는 HW에서 SW의 많은 부분)를 DB처럼 사용할 수 있다.
WMI를 이용하여 Process의 실행/중지를 이벤트를 통하여 감시할 수도 있다.
물론 process 감시를 위해 FindWindow나 EnumProcess같은 API를 사용 할 수도 있다.
그러나 몇 가지 예외 상황에서는 WMI를 사용하는 것이 무척 효율적이고 강력하다.
이 글에서는 WMI를 이용하여 Process를 감시하는 예제를 구현할 것이다.
목적
MSDN에서 제공하는 비동기 방식의 이벤트 수신하는 예제를 조금 더 편하게 고도화 시켰다.
사용자는 CProcessMon 클래스를 상속받아 StartMonitor() 함수를 호출하면 그 결과를 OnDelete() 또는 OnCreate() 메소드를 통해 수신 받을 수 있다.
실행
'Source code or Tip > Windows' 카테고리의 다른 글
[github] DLL에 인증기능 넣기 - DLL Injection, Shellcode (0) | 2020.12.05 |
---|---|
OutputDebugString을 이용한 debug_log_monitor (0) | 2020.11.11 |
Comments