У меня есть требование использовать dll, сгенерированные VB6, в коде .Net, но я запутался, потому что компиляция обоих происходит по-разному. и я не уверен, что если .Net во время выполнения откажется от использования VB6 DLL.
Вы можете ссылаться на ActiveX (COM) DLL, созданную из VB6 (и зарегистрированную с помощью regsvr32), добавив ссылку на компонент на вкладке COM диалогового окна Добавить ссылку в вашем .NET-проекте. Visual Studio создаст для вас необходимый слой взаимодействия.
regsvr32
DLL-файлы, которые генерирует компилятор VB6, сильно отличаются от сборок (также вызывающе называть dll), которые генерирует компилятор .NET.
Вы не сможете вызывать их напрямую без уровня взаимодействия .
Библиотеки VB6 не являются сборками .NET и очень отличаются по своей природе (неуправляемый от управляемого кода), поэтому их нельзя использовать напрямую. Вам нужно PInvoke или COM-взаимодействие .