2011-11-02 41 views
0

我有来自其他进程的检索处理模块64位程序,但是当我尝试获取模块形成32个进程我只得到:检索从64位应用程序的所有32位处理模块(C#)

  1. 可执行应用 - 各种
  2. ntdll.dll中 - 总是
  3. wow64.dll - 总是
  4. wow64cpu.dll - 总是
  5. wow64win.dll - 总是

但过程有许多其他模块。

我可以从64位应用程序(C#)中获得所有32位处理模块吗?

谢谢!

回答

0

wow64 *模块是x86的thunking层。所有的x86模块都应该显示为由thunking模块加载。

1

是的,但你需要p/invoke。

这有可能是DBGHELP API可以哄着要做到这一点,但我已经被告知,尽管有适当大小的结构,它返回仅64位WOW64仿真层DLL在Win32-on-Win64进程中调用时。

+0

事实上,这具有相同的位数限制,该工具帮助API(从Windows 7系统目录与DBGHELP 6.1测试),因此产生相同的输出中的问题。看起来我太快放弃了我的最后一票。 ;-) –

+0

@DavidHeffernan:固定,我认为 –

+0

是的,我认为这是准确的。我认为在你纠正我至少50次之后,这可能是第一次在另一个方向。 ;-) –

相关问题