Страницы

Поиск по вопросам

пятница, 13 декабря 2019 г.

Как подключить библиотеку, чтобы на другом ПК её было достаточно поместить в папку с exe файлом?

#c_sharp #net #visual_studio #dll #visual_studio_2012


Для работы программы необходим Microsoft.Office.Interop.Word.dll. На некоторых ПК
он может отсутствовать, поэтому решил, что следует поместить его в папку с программой.

Подключаю его через ссылки (reference) и на моём ПК всё работает. Однако, расположение
библиотеки указывается полностью и на другом ПК придётся поместить его в ту же папку.

Собственно, как подключать библиотеку, чтобы при выполнении она бралась из папки,
где находится exe файл?

Разбираться с тем, как организовать установку на пользовательском ПК нет времени
(да и нужды).
    


Ответы

Ответ 1



Указать в свойствах референса CopyLocal = True. Но обратите внимание на замечание @pavelip -- чтобы работала интеграция с Вордом, прежде всего на компьютере д.б. установлен Ворд.

Ответ 2



Сборка Microsoft.Office.Interop.Word.dll - это всего лишь обертка вокруг COM объектов MS Word. Для правильной работы на другом ПК должен быть установлен MS Word.

Ответ 3



Полный путь в reference - это информация для студии и компилятора. В самом exe библиотека будет подключена по имени - Microsoft.Office.Interop.Word. При запуске среда будет искать ее в стандартных местах, в том числе и в папке приложения. При выставленном на референсе CopyLocal = True (по умолчанию) студия скопирует dll в папку с exe, так что вам достаточно будет просто скопировать на пользовательский ПК всю папку целиком.

Ответ 4



dll по-умолчанию сначала ищется в папке с exe и только если её там нет в папке windows, а если и там нет то начинает поиск по папкам из глобальной переменной PATH

Комментариев нет:

Отправить комментарий