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;
}






