【发布时间】:2011-12-01 22:23:21
【问题描述】:
我正在使用 Microsoft AddIn Framework 来加载 AddIn 程序集。我在他们自己的进程中运行它们,以便将它们与服务分开。我不喜欢每个 AddIn 进程在任务管理器中显示为 AddInProcess32.exe。使用进程隔离时,我们如何重命名任务管理器中显示的名称,以便对用户更具描述性?
【问题讨论】:
我正在使用 Microsoft AddIn Framework 来加载 AddIn 程序集。我在他们自己的进程中运行它们,以便将它们与服务分开。我不喜欢每个 AddIn 进程在任务管理器中显示为 AddInProcess32.exe。使用进程隔离时,我们如何重命名任务管理器中显示的名称,以便对用户更具描述性?
【问题讨论】:
很遗憾你不能。
该进程的文件名硬编码在私有方法 GetProcessName(Platform platform) 中,该方法在 System.AddIn.Hosting.AddInProcess 类的构造函数中调用。 而且 System.AddIn.Hosting.AddInProcess 是一个密封类,所以它不能被继承,也不能被覆盖。
为加载项自定义进程名称的唯一方法是拒绝使用 System.AddIn 框架并创建自己的框架。
这里有很多关于在 C# 中创建插件架构的文章列表:Creating a plug-in framework in C#: Resources。
【讨论】: