728x90
728x170
■ SetWindowsHookEx API 함수를 선언하는 방법을 보여준다.
▶ 예제 코드 (C#)
using System;
using System.Runtime.InteropServices;
#region 윈도우 후킹 설정하기 (확장) - SetWindowsHookEx(hookID, hookProc, moduleHandle, threadID)
/// <summary>
/// 윈도우 후킹 설정하기 (확장)
/// </summary>
/// <param name="hookID">후킹 ID</param>
/// <param name="hookProc">후킹 프로시저</param>
/// <param name="moduleHandle">모듈 핸들</param>
/// <param name="threadID">스레드 ID</param>
/// <returns>후킹 핸들</returns>
[DllImport("user32", CharSet = CharSet.Auto, SetLastError = true)]
private static extern IntPtr SetWindowsHookEx(int hookID, HookProc hookProc, IntPtr moduleHandle, uint threadID);
#endregion
#region 후킹 프로시저 대리자 - HookProc(code, wordParameter, longParameter)
/// <summary>
/// 후킹 프로시저 대리자
/// </summary>
/// <param name="code">코드</param>
/// <param name="wordParameter">WORD 매개 변수</param>
/// <param name="longParameter">LONG 매개 변수</param>
/// <returns>처리 결과</returns>
private delegate IntPtr HookProc(int code, IntPtr wordParameter, IntPtr longParameter);
#endregion
728x90
그리드형(광고전용)
'C# > WIN32' 카테고리의 다른 글
[C#/WIN32] IsWindowVisible API 함수 선언하기 (0) | 2021.04.02 |
---|---|
[C#/WIN32] GetCurrentThreadId API 함수 선언하기 (0) | 2021.03.27 |
[C#/WIN32] GetModuleHandle API 함수 선언하기 (0) | 2021.03.27 |
[C#/WIN32] CallNextHookEx API 함수 선언하기 (0) | 2021.03.27 |
[C#/WIN32] UnhookWindowsHookEx API 함수 선언하기 (0) | 2021.03.27 |
[C#/WIN32] SetWindowCompositionAttribute API 함수 선언하기 (0) | 2021.03.23 |
[C#/WIN32] GetImmersiveUserColorSetPreference API 함수 선언하기 (0) | 2021.02.26 |
[C#/WIN32] GetImmersiveColorTypeFromName API 함수 선언하기 (0) | 2021.02.26 |
[C#/WIN32] GetImmersiveColorFromColorSetEx API 함수 선언하기 (0) | 2021.02.26 |
[C#/WIN32] mouse_event API 함수 선언하기 (0) | 2021.02.25 |