Использование справочных библиотек (dll), хранящихся в другой папке от основной программы? - PullRequest
2 голосов
/ 26 августа 2010

(Это может быть очевидный вопрос, но я не был уверен, что спросить Bing / Google)

В проекте VS2008 (C # Winforms) существует множество сторонних библиотек, на которые есть ссылки. В проекте используется «Copy Local = True», поэтому различные DLL-файлы оказываются в той же папке, что и скомпилированное приложение.

Чтобы все исправить, я бы хотел изменить программу так, чтобы все библиотеки находились в подпапках.

Например:

C: \ MyProgram \ -> основная папка программы C: \ MyProgram \ Libraries -> папка хранения DLL

Как бы я это сделал?

1 Ответ

6 голосов
/ 26 августа 2010

Лучший способ сделать это - добавить файл app.config в ваше решение и настроить частные пути поиска для каждой из подпапок.Затем CLR будет искать эти папки при поиске сборок

<configuration>
   <runtime>
      <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
         <probing privatePath="subFolder1;subFolder2;" />
      </assemblyBinding>
   </runtime>
</configuration>

Документация

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...