CLR dll не может запустить управляемую DLL, если она не находится в каталоге exe - PullRequest
0 голосов
/ 16 мая 2018

У меня такая ситуация:

  1. Приложение C ++, которое загружает подключаемые библиотеки DLL во время выполнения.
  2. Подключаемая DLL с поддержкой CLR со ссылкой на управляемую (C #) DLL.
  3. Управляемая (C #) DLL.

Она упорядочена следующим образом:

  • приложение, хранящееся в app dir
  • обе библиотеки DLL (CLR и управляемая) находятся в плагине dir, который параллелен приложению

Проблема заключается в том, что если управляемая DLL не может быть загруженаиз плагина DLL, если он не находится в app dir.Я действительно предпочитаю, чтобы он находился в плагине dir, поскольку по логике он использовался из плагина, а не из приложения.

.NET-приложения можно настроить с помощью файла .config длявключите привязку сборки из других каталогов, но опять же, это приложение C ++.

Просто для пояснения: у меня нет проблем с запуском других DLL из плагина, у меня проблема только с загрузкой управляемой DLL.

Итак, мой вопрос: как я могу включить управляемую DLL для запуска из пользовательского каталога?

...