#ifndef _PSAPINT_MODENTRY_HPP_ #define _PSAPINT_MODENTRY_HPP_ #ifndef _COMMON_WINDOWS_HPP_ #include #endif #ifndef _COMMON_TOOLHELP32_HPP_ #include #endif class ModuleEntry : private MODULEENTRY32 { public: ModuleEntry(void); virtual ~ModuleEntry(); DWORD moduleID(void)const; void moduleID(DWORD moduleID); DWORD processID(void)const; void processID(DWORD processID); DWORD globalCntUsage(void)const; void globalCntIUsage(DWORD globalCntUsage); DWORD procCntUsage(void)const; void procCntUsage(DWORD procCntUsage); DWORD modBaseAddress(void)const; void modBaseAddress(DWORD modBaseAddress); DWORD modBaseSize(void)const; void modBaseSize(DWORD modBaseSize); HMODULE module(void)const; void module(HMODULE hModule); String strModule(void)const; void szModule(const String &strModule); String strExePath(void)const; void strExePath(const String &strExePath); MODULEENTRY32 &getMODULEENTRY(void); private: void zeroInit(void); }; inline ModuleEntry::ModuleEntry(void) { zeroInit(); } inline ModuleEntry::~ModuleEntry() { } inline DWORD ModuleEntry::moduleID(void)const { return MODULEENTRY32::th32ModuleID; } inline void ModuleEntry::moduleID(DWORD moduleID) { MODULEENTRY32::th32ModuleID=moduleID; } inline DWORD ModuleEntry::processID(void)const { return MODULEENTRY32::th32ProcessID; } inline void ModuleEntry::processID(DWORD processID) { MODULEENTRY32::th32ProcessID=processID; } inline DWORD ModuleEntry::globalCntUsage(void)const { return MODULEENTRY32::GlblcntUsage; } inline void ModuleEntry::globalCntIUsage(DWORD globalCntUsage) { MODULEENTRY32::GlblcntUsage=globalCntUsage; } inline DWORD ModuleEntry::procCntUsage(void)const { return MODULEENTRY32::ProccntUsage; } inline void ModuleEntry::procCntUsage(DWORD procCntUsage) { MODULEENTRY32::ProccntUsage=procCntUsage; } inline DWORD ModuleEntry::modBaseAddress(void)const { return DWORD(MODULEENTRY32::modBaseAddr); } inline void ModuleEntry::modBaseAddress(DWORD modBaseAddress) { MODULEENTRY32::modBaseAddr=(BYTE*)modBaseAddress; } inline DWORD ModuleEntry::modBaseSize(void)const { return MODULEENTRY32::modBaseSize; } inline void ModuleEntry::modBaseSize(DWORD modBaseSize) { MODULEENTRY32::modBaseSize=modBaseSize; } inline HMODULE ModuleEntry::module(void)const { return MODULEENTRY32::hModule; } inline void ModuleEntry::module(HMODULE hModule) { MODULEENTRY32::hModule=hModule; } inline String ModuleEntry::strModule(void)const { return MODULEENTRY32::szModule; } inline void ModuleEntry::szModule(const String &strModule) { int strLen(strModule.length()); if(strLen<=MAX_MODULE_NAME32)::strcpy(MODULEENTRY32::szModule,(LPSTR)(String&)strModule); else {::strncpy(MODULEENTRY32::szModule,(LPSTR)(String&)strModule,MAX_MODULE_NAME32);MODULEENTRY32::szModule[MAX_MODULE_NAME32]=0;} } inline String ModuleEntry::strExePath(void)const { return MODULEENTRY32::szExePath; } inline void ModuleEntry::strExePath(const String &strExePath) { int strLen(strExePath.length()); if(strLen