📄 callbackhandler.h
字号:
//---------------------------------------------------------------------------
//
// CallbackHandler.h
//
// SUBSYSTEM:
// Monitoring process creation and termination
//
// MODULE:
// An abstract interface for receiving notification when a
// process has been created or terminated
//
// DESCRIPTION:
//
// AUTHOR: Ivo Ivanov
//
//---------------------------------------------------------------------------
#if !defined(_CALLBACKHANDLER_H_)
#define _CALLBACKHANDLER_H_
#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
//---------------------------------------------------------------------------
//
// typedefs for PSAPI.DLL functions
//
//---------------------------------------------------------------------------
typedef BOOL (WINAPI * PFNENUMPROCESSMODULES)(
HANDLE hProcess,
HMODULE *lphModule,
DWORD cb,
LPDWORD lpcbNeeded
);
typedef DWORD (WINAPI * PFNGETMODULEFILENAMEEX)(
HANDLE hProcess,
HMODULE hModule,
LPTSTR lpFilename,
DWORD nSize
);
//---------------------------------------------------------------------------
//
// class CCallbackHandler
//
//---------------------------------------------------------------------------
class CCallbackHandler
{
public:
CCallbackHandler();
virtual ~CCallbackHandler();
//
// Define an abstract interface for receiving notifications
//
virtual void OnProcessEvent(
PQUEUED_ITEM pQueuedItem,
PVOID pvParam
) = 0;
protected:
//
// Return the name of the process by its ID using PSAPI
//
BOOL GetProcessName(
DWORD dwProcessId,
LPTSTR lpFileName,
DWORD dwLen
);
private:
HMODULE m_hModPsapi;
PFNENUMPROCESSMODULES m_pfnEnumProcessModules;
PFNGETMODULEFILENAMEEX m_pfnGetModuleFileNameEx;
};
#endif // !defined(_CALLBACKHANDLER_H_)
//----------------------------End of the file -------------------------------
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -