首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用于MAF AddIn的EntryAssembly

用于MAF AddIn的EntryAssembly
EN

Stack Overflow用户
提问于 2011-12-30 07:24:33
回答 1查看 262关注 0票数 1

有没有办法设置MAF插件,以便当从插件的AppDomain内部调用时,System.Reflection.Assembly.GetEntryAssembly()返回对插件的主程序集的引用?

背景:为了满足项目的某些安全要求,我必须在单独的AppDomain中加载外接程序,并且当从外接程序的AppDomain内部调用时,GetEntryAssembly()的结果必须设置为外接程序的(强名称)主程序集。我已经按照MSDN MAF walkthrough中的模式开发了一个测试用例。在我的测试用例中,如果程序集是在单独的AppDomain (或进程)中加载的,则GetEntryAssembly()总是返回null。

我注意到GetEntryAssembly文档说“当从非托管应用程序加载托管程序集时,GetEntryAssembly方法不能返回任何内容”--这是否适用于跨AppDomain边界的代理?

有问题的程序集和可执行文件都具有强名称。

EN

回答 1

Stack Overflow用户

发布于 2012-04-10 00:46:37

在这一点上你是对的。它不返回任何内容(null)。

但请注意,在System.Reflection.Assembly.GetEntryAssembly中,“返回值”被描述为:

作为默认应用程序域中的进程可执行文件的程序集,或AppDomain.ExecuteAssembly执行的第一个可执行文件

AppDomain.ExecuteAssembly用于执行.NET应用程序的main方法。在这种情况下,不会执行任何应用程序。here解释了正在做的事情。

不返回任何内容(null)是有意义的,因为没有对ExecuteAssembly的调用。

为什么不使用GetExecutingAssembly呢?

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8674674

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档