【发布时间】:2018-05-24 07:21:47
【问题描述】:
如何从 Visual c++ 中的打开进程句柄中获取 HMODULE? 例如:如果我有另一个进程的句柄(使用 OpenProcess 创建)并且我想获取该句柄的 HMODULE?
这只是一个简单的演员表吗?
(HMODULE)myHandle;
【问题讨论】:
-
对我来说听起来像是XY Problem。你真正想要完成什么?
如何从 Visual c++ 中的打开进程句柄中获取 HMODULE? 例如:如果我有另一个进程的句柄(使用 OpenProcess 创建)并且我想获取该句柄的 HMODULE?
这只是一个简单的演员表吗?
(HMODULE)myHandle;
【问题讨论】:
您不能只是强制转换,而是可以将其传递给EnumProcessModules 以检索与给定进程关联的模块列表。返回的第一个模块是进程的主模块,因此您可以(可能)传递一个缓冲区,该缓冲区只能容纳一个 HMODULE。
【讨论】:
EnumProcessModulesEx 用于选择性地检索 32 和/或 64 位模块,而不管调用进程的位数。
HMODULE。只是因为它在 32bit 进程中是 32bit 值,当它为 64bit 时它的 64bit 值。只是会被转译