Динамическое связывание неуправляемой библиотеки DLL в управляемой библиотеке классов C ++ - PullRequest
0 голосов
/ 21 января 2009

Через пробную версию n я выяснил, как связать неуправляемую статическую библиотеку с управляемой C ++ dll, но я понятия не имею, как динамически включать DLL. Кто-нибудь знает, как это сделать в Visual studio 2008?

Ответы [ 3 ]

0 голосов
/ 30 января 2009

Я пытаюсь связать CAIR с моей управляемой сборкой. CAIR зависит от pthreads, статической или динамической библиотеки для доступа к функциям posix любой ОС.

Это не имеет смысла для меня, но решение было включить файл pthreads.lib в управляемую сборку C ++ и динамически связать pthreads.dll в управляемой библиотеке, а также во всех потребительских проектах.

У меня сложилось впечатление, что мне не нужна dll, если я статически скомпилировал библиотеку в свою управляемую сборку.

0 голосов
/ 30 января 2009

Хм. Я не уверен в точных деталях того, почему это происходит, но я использую библиотеку OpenCV, и мне нужно как статически связать файл lib, так и динамически связать файл dll. Так что я думаю, что это нормально. Я думаю, что отчасти это объясняется тем, что если поставщик библиотеки обновляет библиотеку, он может просто распространить новый файл dll, и ваш код будет автоматически работать с ним - вам не нужно перекомпилировать всю их программу каждый раз, когда библиотека обновлен.

0 голосов
/ 21 января 2009

Вызов неуправляемой «LoadLibrary» не работает?

...