VB6 с библиотекой .NET

У меня есть приложение, написанное на VB6, и мне нужно использовать библиотеку, написанную на .NET. Есть ли способ использовать библиотеку в моем приложении?

Спасибо


person Feyyaz    schedule 16.06.2010    source источник
comment
Я думаю, что если .NET-библиотека экспортирует свой интерфейс как COM-интерфейс, это должно быть возможно. Иначе будет тяжело. Но я не COM-экспорт.   -  person Gamlor    schedule 16.06.2010


Ответы (3)


Это зависит. У вас есть контроль над библиотекой .NET?

Если это так, вы можете изменить свою библиотеку, чтобы ее можно было зарегистрировать как компонент COM. Затем вы можете использовать компонент COM из VB6.

Вы можете следовать этому руководству CodeProject, чтобы получить пошаговые инструкции по созданию COM-компонента в .NET, его регистрации и последующем вызове из VB6:

Открытие компонентов .NET для COM

person Justin Niessner    schedule 16.06.2010
comment
Это означает, что если у меня нет контроля над библиотекой, я не смогу этого сделать, верно? - person Feyyaz; 16.06.2010
comment
@Sahs - Да, если у вас нет возможности предоставить библиотеку .Net для COM самостоятельно, и вы не можете заставить владельца сделать это, вы не сможете этого сделать. - person Kevin LaBranche; 16.06.2010
comment
Спасибо, еще вопрос, как мне определить есть ли у меня возможность выставлять. Это сторонняя библиотека, и у меня есть только ее dll. Извините, я новичок в этом .Net-COM. - person Feyyaz; 16.06.2010
comment
@sahs - если у вас нет прямого доступа к библиотеке, у вас есть возможность обернуть нужные вам вызовы в свою собственную сборку и открыть ЭТО через COM. - person Justin Niessner; 16.06.2010
comment
+1 Вот статья MSDN, в которой демонстрируется упаковка библиотек .Net, чтобы их можно было использовать из VB6. На самом деле он демонстрирует обертывание собственных объектов .Net framework, но принцип тот же. msdn.microsoft.com/en-us/library/aa719105 (VS.71).aspx - person MarkJ; 17.06.2010


Вам нужно открыть библиотеку .Net для COM...

http://support.microsoft.com/kb/817248

http://www.codeguru.com/csharp/.net/net_general/comcom/article.php/c6747

person Kevin LaBranche    schedule 16.06.2010