| 4 | #include "ProcessModuleTracker.h" |
| 5 | |
| 6 | class CProcessModuleTable : |
| 7 | public CTable<std::shared_ptr<WinSys::ModuleInfo>>, |
| 8 | public CWindowImpl<CProcessModuleTable> { |
| 9 | public: |
| 10 | DECLARE_WND_CLASS_EX(NULL, CS_DBLCLKS | CS_VREDRAW | CS_HREDRAW, COLOR_WINDOW); |
| 11 | |
| 12 | BEGIN_MSG_MAP(CProcessModuleTable) |
| 13 | MESSAGE_HANDLER(WM_DESTROY, OnDestroy) |
| 14 | MESSAGE_HANDLER(WM_CREATE, OnCreate) |
| 15 | MESSAGE_HANDLER(WM_PAINT, OnPaint) |
| 16 | MESSAGE_HANDLER(WM_HSCROLL, OnHScroll) |
| 17 | MESSAGE_HANDLER(WM_VSCROLL, OnVScroll) |
| 18 | MESSAGE_HANDLER(WM_USER_VABS, OnUserVabs) |
| 19 | MESSAGE_HANDLER(WM_USER_VREL, OnUserVrel) |
| 20 | MESSAGE_HANDLER(WM_USER_CHGS, OnUserChgs) |
| 21 | MESSAGE_HANDLER(WM_MOUSEWHEEL, OnMouseWheel) |
| 22 | MESSAGE_HANDLER(WM_MOUSEMOVE, OnMouseMove) |
| 23 | MESSAGE_HANDLER(WM_LBUTTONDOWN, OnLBtnDown) |
| 24 | MESSAGE_HANDLER(WM_LBUTTONUP, OnLBtnUp) |
| 25 | MESSAGE_HANDLER(WM_USER_STS, OnUserSts) |
| 26 | MESSAGE_HANDLER(WM_WINDOWPOSCHANGED, OnWindowPosChanged) |
| 27 | MESSAGE_HANDLER(WM_KEYDOWN, OnKeyDown) |
| 28 | MESSAGE_HANDLER(WM_SYSKEYDOWN, OnSysKeyDown) |
| 29 | MESSAGE_HANDLER(WM_GETDLGCODE, OnGetDlgCode) |
| 30 | END_MSG_MAP() |
| 31 | |
| 32 | CProcessModuleTable(BarInfo& bars, TableInfo& table,DWORD pid,HWND hwnd); |
| 33 | CProcessModuleTable(BarInfo& bars, TableInfo& table, HANDLE hProcess); |
| 34 | |
| 35 | int ParseTableEntry(CString& s, char& mask, int& select, std::shared_ptr<WinSys::ModuleInfo>& info, int column); |
| 36 | |
| 37 | LRESULT OnCreate(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& /*bHandled*/); |
| 38 | LRESULT OnDestroy(UINT uMsg, WPARAM wParam, LPARAM lparam, BOOL& /*bHandled*/); |
| 39 | LRESULT OnPaint(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& /*bHandled*/); |
| 40 | LRESULT OnHScroll(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& /*bHandled*/); |
| 41 | LRESULT OnVScroll(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& /*bHandled*/); |
| 42 | LRESULT OnUserVabs(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& /*bHandled*/); |
| 43 | LRESULT OnUserVrel(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& /*bHandled*/); |
| 44 | LRESULT OnUserChgs(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& /*bHandled*/); |
| 45 | LRESULT OnMouseWheel(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& /*bHandled*/); |
| 46 | LRESULT OnMouseMove(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& /*bHandled*/); |
| 47 | LRESULT OnLBtnDown(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& /*bHandled*/); |
| 48 | LRESULT OnLBtnUp(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& /*bHandled*/); |
| 49 | LRESULT OnRBtnDown(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& /*bHandled*/); |
| 50 | LRESULT OnUserSts(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& /*bHandled*/); |
| 51 | LRESULT OnWindowPosChanged(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& /*bHandled*/); |
| 52 | LRESULT OnKeyDown(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& /*bHandled*/); |
| 53 | LRESULT OnSysKeyDown(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& /*bHandled*/); |
| 54 | LRESULT OnGetDlgCode(UINT /*uMsg*/, WPARAM /*wParam*/, LPARAM /*lParam*/, BOOL& /*bHandled*/); |
| 55 | |
| 56 | struct ModuleInfoEx { |
| 57 | DWORD64 TargetTime = 0; |
| 58 | bool IsNew{ false }; |
| 59 | bool IsUnloaded{ false }; |
| 60 | }; |
| 61 | |
| 62 | ModuleInfoEx& GetModuleEx(WinSys::ModuleInfo* mi); |
| 63 | CString CharacteristicsToString(WinSys::DllCharacteristics ch); |
nothing calls this directly
no outgoing calls
no test coverage detected