Как мне использовать незарегистрированную dll из c #? - PullRequest
3 голосов
/ 20 мая 2010

У меня есть пользовательская DLL (не зарегистрирована), к которой мне нужно получить доступ через c # Как мне это сделать без регистрации DLL?

Редактировать: Это C ++ dll.

Ответы [ 2 ]

4 голосов
/ 20 мая 2010

См. COM-регистрация без регистрации :

COM-регистрация без регистрации активирует компонент без использования реестр Windows для хранения сборки Информация. Вместо регистрации компонент на компьютере во время развертывание, вы создаете Win32-стиль файлы манифеста во время разработки, содержать информацию о привязке и активация. Эти файлы манифеста, вместо ключей реестра, направьте активация объекта.

Использование активации без регистрации для ваши сборки вместо регистрации их во время развертывания предлагает два Преимущества:

  • Вы можете контролировать, какая версия DLL активируется, когда более одна версия установлена ​​на компьютер.
  • Конечные пользователи могут использовать XCOPY или FTP для копирования вашего приложения на соответствующий каталог на их компьютер. Приложение может быть запустить из этого каталога.
1 голос
/ 20 мая 2010

Я предполагаю, что вы хотите использовать функции, экспортированные из этой DLL через P / Invoke? Если это так, вам нужно только скопировать DLL в ту же папку, что и ваш исполняемый файл. Затем напишите объявления C # для функций в dll C ++, которые вы хотите использовать. См. DllImportAttribute .

...