c# - 获取 C# dll 进程模块

标签 c# dll process module diagnostics

我有一个托管.NET 应用程序。我试图获取当前进程加载的所有进程模块,以便我可以找出这些模块的基址是什么。但是,当我使用 System.Diagnostics.Process.Modules 函数时,我没有恢复任何 C# 模块。然而,我得到了 C++/CLI 模块,这很奇怪,因为它都是 .NET 框架。

我调用 System.Diagnostics.Process.Modules 的项目引用了我的所有 dll 并使用它们,但是它们只是没有显示在模块集合中。

有什么建议吗?

最佳答案

看起来这是 .Net 4.0 中的一个错误,没有得到修复

http://social.msdn.microsoft.com/Forums/en/netfxappcompatprerelease/thread/5bc8a424-8770-4a34-80e4-6108ea95c28d

以下是一些用于解决问题的方法

https://connect.microsoft.com/VisualStudio/feedback/details/546430/system-diagnostics-process-modules-doesnt-include-managed-dlls

经过更多研究......我想改进我的答案。事实上,这是 .Net 4.0 中的一个错误。我知道我以前做过,但它是在 Dot Net 3.5 中,并且它适用于托管和非托管

关于c# - 获取 C# dll 进程模块,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9400625/

相关文章:

linux - 通过管道进行进程间通信

c# - 带有自定义刻度的 slider (标签和速度)

c# - ComVisible() 与 ComVisible 属性 ()

c# - log4net %property 不起作用

c# - C# 中的 C++ dll

java - 将 DLL 加载到 java 中会导致 java.exe 中的 CPU 使用率增加吗?

java - 我如何调用一个声明 ArrayList 并从另一个方法引用变量的方法?

c# - 那么... ASP.NET MVC 和 WebSockets?

c++ - 加载 DLL 不初始化静态 C++ 类

emacs - 使用Emacs和Gdb设置断点,为什么提示总是 "Current buffer has no process"?