По сути, я создал шаблон, который обеспечивает «псевдо-наследование смешанного режима». Теперь мои объекты c # происходят от базового класса в c ++.

я есть приложение на C ++. Это поддерживает пользовательские DLL-библиотеки плагинов C ++, они будут динамически загружать эти DLL, а затем смогут динамически создавать и использовать типы пользователей. Эти типы пользователей являются производными от базовых типов и интерфейсов, определенных в основной библиотеке основного приложения, поэтому я держу объекты пользователя в качестве указателей на базовый класс и вызываю виртуальные функции пользователя, чтобы их волшебство происходило.

Теперь я хочу расширить библиотеки плагинов, чтобы разрешить управляемые библиотеки DLL (я забочусь о C # в основном). Я хочу, чтобы все то же волшебство происходило в библиотеках плагинов C #.

Как я могу динамически загрузить эти библиотеки DLL, как я думаю, что LoadLibrary win32, который я сейчас использую, будет доволен управляемой DLL. У меня не будет доступа к этим библиотекам во время компиляции / компоновки, они приходят от пользователя.

После загрузки библиотеки, к сожалению, я подозреваю, что COM в будущем станет способом вызова производных функций. Возможно, я мог бы использовать оболочку CLI / C ++, о которой я читал, но я здесь очень неопытен и буду признателен за любые советы или ссылки на соответствующие статьи.

Ответы на вопрос(1)

Ваш ответ на вопрос