我在单独的进程中使用 MAF[托管加载框架] 激活我的插件。
问题是它为每个进程提供了默认名称“AddInProcess32”
作为单独进程运行的插件。
我可以为 MAF 创建的流程指定一个自定义名称吗?如果是这样怎么办?
PS:为什么我想给自定义名称?因为我不希望用户错误地终止进程......
我想给进程一个名称,清楚地表明它是我的应用程序的一部分。
虽然确实是可取的,但不幸的是这是不可能的,Dos095-russ 已经在他对同一问题的回答中正确分析了这一点如何指定AddIn进程名称? https://stackoverflow.com/a/8353093/45773(那边+1)。
为了让赏金至少值得你花点时间,我将添加一些背景信息:
The 该进程的文件名是硬编码的在构造函数中添加进程类 http://msdn.microsoft.com/en-us/library/system.addin.hosting.addinprocess.aspx由于该课程的设计目的,即提供一个外部进程,用于从主机应用程序的进程外运行加载项。具体的机制在Remarks部分:
运行加载项的可执行文件是从两个文件之一获取的
与 .NET Framework 一起安装在 Windows 目录下。经过
默认情况下,与主机的每字位数匹配的可执行文件
使用应用程序。如果主机是64位进程,则AddInProcess.exe
正在运行;否则,将运行 AddInProcess32.exe。指定方式
选择可执行文件,使用 AddInProcess(Platform) 构造函数
创建 AddInProcess 对象。
可能需要进程外加载项的主要原因by someDanielg 的回答中正确总结了应用程序在 MEF 和 MAF 之间进行选择 (System.AddIn) https://stackoverflow.com/questions/835182/choosing-between-mef-and-maf-system-addin。如果这些实际上不适用于您的用例,您可以探索提供的答案和链接MEF 是 System.Addin 的替代品吗? https://stackoverflow.com/a/840441/45773为了判断托管可扩展性框架 (MEF) 实际上是否可能是更好的解决方案 - 顺便说一句,它的功能非常出色,非常易于编程并相应广泛使用。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)