Code:
uint32_t GetModuleBase(DWORD dwProcessID, std::wstring ModuleName) { HANDLE hModuleSnapshot = CreateToolhelp32Snapshot(TH32CS_SNAPMODULE, dwProcessID); MODULEENTRY32 ModuleEntry32; ModuleEntry32.dwSize = sizeof(ModuleEntry32); if (!Module32First(hModuleSnapshot, &ModuleEntry32)) { return 0; } do { if (std::wstring(ModuleEntry32.szModule) == ModuleName) { return (uint32_t)ModuleEntry32.modBaseAddr; } } while (Module32Next(hModuleSnapshot, &ModuleEntry32)); return 0; }