Создать экземпляр неуправляемого класса dll

Как создать класс, с которым я могу ссылаться и напрямую использовать методы вызова из неуправляемой dll? (при условии, что неуправляемая dll - это dll, которая не существует/известна @время компиляции)

Например, у меня есть dll, который содержит класс helloWorld, и я хочу создать экземпляр класса, а затем вызвать helloWorld.tell().

2 ответа

Вы можете использовать свою сборку с интерфейсом COM, который доступен из неуправляемого кода.

Здесь есть несколько примеров, которые вы можете скачать. Проверьте код COM Interop Part II. http://code.msdn.microsoft.com/windowsdesktop/Visual-Studio-2010-Samples-31b491f3

Если вы чувствуете себя храбрым, вот еще одно объяснение: http://msdn.microsoft.com/en-us/library/aa645738(v=vs.71).aspx

Надеюсь, это поможет.


Похоже, что вы пытаетесь динамически загружать сборку, а не работать с неуправляемой сборкой. Кажется, вы ищете информацию об отражении. Вы можете использовать Activator для создания необходимых вам объектов. Есть много способов сделать это, и я буду читать на нем. Вот несколько ресурсов для начала работы:

Проект кода - отражение в учебнике С#

CSharp.Net - Введение в размышления

CodeGuru.com - Введение в размышления

licensed under cc by-sa 3.0 with attribution.