Было 3 случая использования случайных DLL в программе .NET и наоборот.
- это .NET DLL. Здесь нечего делать. Вы всегда можете использовать .NET DLL в. NET Programm. Вы уже делаете это, просто компилируя любой стартовый проект
- COM-взаимодействие. Во многих отношениях .NET был продолжением более старого подхода COM. В результате .NET Framework имеет расширенную поддержку COM-взаимодействия .
- P / Invoke .
Вариант 2 может работать впроблемы несоответствия бинарности. Вариант 3 почти гарантирован.
Не совсем понятно, является ли ваша программа на C ++ C ++ .NET (сценарий для случая 1) или то, что я называю нативным C ++ (который является любым C ++, кроме .NET). По своему дизайну .NET / MSIL не зависят от исходного языка. То, что .NET определяет больше ограничений, чем язык. Я не могу сказать, был ли System.Xml.Linq.dll написан на C ++ .NET, C #, F # или VB .NET. И мне не нужно знать, чтобы использовать его.