在 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/