将MAF插件作为单独的进程运行自定义名称

时间:2012-01-18 17:03:59

标签: .net plugins maf

我在一个单独的进程中使用MAF [Managed Add-In Framework]激活我的插件。

  

问题是它为每个提供了默认名称“AddInProcess32”   插件作为一个单独的进程运行。

我可以为MAF创建的流程提供自定义名称吗?如果是这样的话?

PS:为什么我要给自定义名称?因为我不想让用户误杀过程...... 我想给进程一个名称,清楚地表明它是我应用程序的一部分。

1 个答案:

答案 0 :(得分:2)

虽然确实令人满意,但遗憾的是,这不可能,正如Dos095-russ在回答相同问题How to specify AddIn process names?(那里的+1)时所正确分析的那样。

为了使赏金至少值得你这么做,我会添加一些背景:

该进程的文件名在AddInProcess Class的构造函数中是硬编码的,因为该类的目的是为了设计,即提供[s]外部从主机应用程序运行进程外加载项的过程备注部分介绍了具体的机制:

  

运行加载项的可执行文件是从两个文件中的一个获取的   在Windows目录下安装.NET Framework。通过   default,与主机的每字位数匹配的可执行文件   应用程序使用。如果主机是64位进程,则为AddInProcess.exe   运行;否则,运行AddInProcess32.exe。指定方式   选择可执行文件,使用AddInProcess(Platform)构造函数   创建AddInProcess对象。

一些应用程序可能需要的进程外加载项的主要原因在Danielg对Choosing between MEF and MAF (System.AddIn)的回答中得到了适当的总结。如果这些确实不适用于您的用例,您可以探索为Is MEF a replacement for System.Addin?提供的答案和链接,以判断托管可扩展性框架(MEF)是否可能是更好的解决方案 - 它非常适用于它顺便说一下,很容易编程并广泛使用。