доступ к .net2 .0 dll в dll .net 4.0

Я хочу загрузить DLL .NET 2.0 в свой .Net4.0 dll . Я искал решение и нашел атрибут useLegacyV2RuntimeActivationPolicy, который я могу добавить в свой app.config, как в этом URL: Сборка смешанного режима построена против версии v1.1.4322

Но проблема для меня в том, что в моем случае я пытаюсь использовать DLL .net2.0 в моей 4.0 DLL, а не в 4.0 exe ​​. Причина в том, что эта DLL 4.0 затем используется в Excel в качестве надстройки автоматизации.

В настоящее время, когда я использую свой .NET 4.0 API (который загружает DLL 2.0 для функции) из Excel, я получаю «смешанный режим» 2.0 dll не может быть загружена во время выполнения 4.0 », что понятно, поскольку COM загрузил CLR 4.0 и, следовательно, не может загрузить DLL 2.0.

Каким-то образом мне нужно заставить мою DLL 4.0 загружать среду выполнения 2.0. Я попытался добавить app.config в dll 4.0, но я думаю, только .exe читает app.config по умолчанию для загрузки clr. Это то, что у меня есть в моем app.config в проекте 4.0 dll, но бесполезно.

    

  
    
  
  
    
  

Как мне решить эту проблему, чтобы моя .NET 4.0 DLL могла использовать .NET 2.0 dll?

Спасибо, Mani

8
задан Community 23 May 2017 в 12:08
поделиться