c# - 通过代码(C# 或 PowerShell)获取有关进程(如 Sysinternals Process Explorer)的 .NET 程序集信息

标签 c# .net powershell process assemblies

在 Sysinternals Process Explorer 中存在一个选项卡“.NET Assemblies”。

此选项卡仅显示在实际使用 .NET 程序集的进程的属性中。

如何使用 PowerShell 或 C# 获取任何正在运行的进程的相同信息?

谢谢。

最佳答案

查看this answer后我意识到也许没有简单的方法可以得到你所需要的东西。因此,让我们与 MDBG 一起解决您的托管流程挑战:

        _engine = new MDbgEngine();
        _engine.Attach(p.Id, RuntimeEnvironment.GetSystemVersion());
        _engine.Processes.Active.Go().WaitOne();
        foreach (MDbgAppDomain appDomain in _engine.Processes.Active.AppDomains) {
            foreach (CorAssembly assembly in appDomain.CorAppDomain.Assemblies) {
                Console.WriteLine(assembly.Name);
            }

        }

您必须使用 nuget 中的 MDBG 包:<package id="Microsoft.Samples.Debugging.MdbgEngine" version="1.4.0.0" targetFramework="net452" />

关于c# - 通过代码(C# 或 PowerShell)获取有关进程(如 Sysinternals Process Explorer)的 .NET 程序集信息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39632208/

相关文章:

c# - 在 O(n) 时间内更新 C# 键控集合中的所有值?

.net - 如何根据 objectGUID 获取 AD 用户的 'memberof' 属性值?

c# - 如何在控制台应用程序中创建表单后隐藏控制台

c# - GridView - 使用 javascript 更改网格数据行中控件的页脚

azure - Powershell 脚本可在一个脚本中删除所有容器中超过 30 天的 .bak 文件

powershell - 如何使用空值声明日期时间变量

powershell - 从任务计划程序运行时如何重定向 PowerShell 输出?

c# - F#'s async state machines the same as C#' 是 async 还是 go-lang 的 go 命令?

c# - 如何将语音识别添加到 Unity 项目?

javascript - 什么颜色格式允许正确的颜色值 "adding"或 "mixing"?