1

在 .net 中,可以在新的 AppDomain 中创建 AddIn。创建新的 AppDomain 并不是什么新鲜事,可以使用 AppDomainSetup 类来指定新创建的 AppDomain 的所有启动参数(例如在哪里可以找到 app.config)。但是,当使用新的 AddInProcess 激活 AddInToken(它指定 AddIn 应在一个全新的进程中实例化)时,无法直接访问将用于在新进程中创建 AppDomain 的 AppDomainSetup 参数。

有没有办法做到这一点?我真的需要能够强制我的新插件使用新的 app.config 设置,以及 AppDomain 上的各种其他自定义。

感谢您在这里的任何帮助...

4

1 回答 1

2
var addins = AddInStore.FindAddIns(typeof(AddInHostView), addInRoot);
foreach (var addin in addins)
{
    var addinInstance = addin.Activate<AddInHostView>(AddInSecurityLevel.FullTrust);

    // snip
    // do stuff
    // snip
}

使用此代码(我了解 FullTrust 不好,但我的应用程序需要),我可以在每个目录中指定一个单独的 app.config(与 Addin 程序集命名相同)。

\AddIns
 \AddIn1
   AddIn1.dll
   AddIn1.dll.config
于 2010-05-27T17:52:29.513 回答