Форум программистов, компьютерный форум, киберфорум
Visual Basic .NET
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.75/8: Рейтинг темы: голосов - 8, средняя оценка - 4.75
 Аватар для Andrei_Korostel
12 / 11 / 2
Регистрация: 02.05.2014
Сообщений: 118
.NET 3.x

Использование Dll из конкретной папки

15.12.2014, 07:29. Показов 1728. Ответов 6
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Скажите как привязаться к dll из определенной папки, чтоб не копировать ее в папку с .exe.

пример дерева папок:
c:\Upgrade\прога.exe
c:\Upgrade\SQL.dll
c:\Upgrade\progs\прога2.exe

прога 1 уже привязана к dll. необходимо привязать прогу2 к этойже dll.
Как это можно сделать?
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
15.12.2014, 07:29
Ответы с готовыми решениями:

Письма из конкретной папки mail.ru
Доброго времени суток. Кто подскажет, как на C# проверить почту в конкретной папке или как вообще получить список этих папок на mail.ru? В...

Как на VB подсчитать размер конкретной папки???
Народ срочно нужно узнать как на VB подсчитать размер конкретной папки!!!! Нужно позарез!!!!!!!

Отображение word файлов на форме из конкретной папки
Помогите пожалуйста. Мне необходимо чтобы на форме отображались word документы которые находятся в конкретной папки и чтобы я их мог...

6
Администратор
Эксперт .NET
 Аватар для OwenGlendower
18307 / 14231 / 5368
Регистрация: 17.03.2014
Сообщений: 28,904
Записей в блоге: 1
15.12.2014, 13:31
Andrei_Korostel, несколькими способами можно решить:

1) Собрать все программы и их зависимости в одну папку.

2) Указать дополнительный путь для поиска зависимостей в файле конфигурации с помощью probing. Однако тебе придется переделывать структуру каталогов для этого т.к. probing позволяет ссылаться только на дочерние папки. То есть в корне папки будут только exe, а зависимости в вложенной папке:
\прога.exe
\прога2.exe
\dlls\SQL.dll

3) Переделать код так чтобы зависимости грузились динамически с помощью Assembly.LoadFrom. Это не всегда возможно и может потребовать много изменений в коде.

4) Присвоить общим dll строгое имя и добавить в GAC.
0
 Аватар для Andrei_Korostel
12 / 11 / 2
Регистрация: 02.05.2014
Сообщений: 118
15.12.2014, 21:41  [ТС]
OwenGlendower, 2 вариант меня устраивает. можно поподробнее? пожалуйста.
0
Администратор
Эксперт .NET
 Аватар для OwenGlendower
18307 / 14231 / 5368
Регистрация: 17.03.2014
Сообщений: 28,904
Записей в блоге: 1
15.12.2014, 22:07
Лучший ответ Сообщение было отмечено Andrei_Korostel как решение

Решение

Andrei_Korostel, добавь в проекты для прога и прога2 файл app.config со следующим содержимым:
XML
1
2
3
4
5
6
7
<configuration>
   <runtime>
      <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
         <probing privatePath="dlls" />
      </assemblyBinding>
   </runtime>
</configuration>
Разрабатывай и отлаживай проект как и раньше. Только при развертывании приложении помещай внешние зависимости в папку dlls рядом c exe. Не забудь также копировать файл конфигурации который должен называться имяПриложения.exe.config. VS автоматически копирует и переименовывает app.config. Тебе остается только скопировать его. Таким образом структура папки будет такой:

\прога.exe
\прога.exe.config
\прога2.exe
\прога2.exe.config
\dlls\SQL.dll

Разумеется папка с dll может называться как угодно. Главное чтобы она была рядом с exe и чтобы файл конфигурации ссылался на неё.
4
 Аватар для Andrei_Korostel
12 / 11 / 2
Регистрация: 02.05.2014
Сообщений: 118
16.12.2014, 06:32  [ТС]
OwenGlendower, Благодарю от души.
0
399 / 318 / 53
Регистрация: 14.08.2014
Сообщений: 1,010
05.05.2015, 18:07
OwenGlendower, а можно ли \прога.exe.config запихнуть в ресурсы, чтобы он читался оттуда или это неправильно?
0
Администратор
Эксперт .NET
 Аватар для OwenGlendower
18307 / 14231 / 5368
Регистрация: 17.03.2014
Сообщений: 28,904
Записей в блоге: 1
05.05.2015, 18:31
Дядя Корней, можно. В инете есть примеры как это делается. Гугли "load assembly from embedded resource"

Добавлено через 22 минуты
Стоп!! Я неправильно понял вопрос. Он про файл конфигурации, а не сборки. Файл конфигурации в ресурсы не получится спрятать насколько мне известно. Он читается CLR еще до загрузки нашего приложения так что увы.
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
05.05.2015, 18:31
Помогаю со студенческими работами здесь

Как использывать Dll не из папки где находиться exe а из другой папки
Здравствуйте! Подскажите, как сделать что бы моя программа могла пользоваться dll из папки рядом созданной, а программа может обратиться к...

настройка «правил обработки писем» из одной конкретной папки
Знаю про настройку «правил» для папки Входящие для автоматического перемещения входящих писем по разным папкам. Вопрос: как настроить...

Макрос для печати файлов xls из конкретной папки
Добрый День, Уважаемые Дамы и Господа! Необходимо сделать макрос который будет печатать документы из конкретной папки, и конкретные листы...

Составить сводную таблицу из первых столбцов файлов конкретной папки
Доброго дня присутствующим! Прошу помощи в следующем. Есть папка с файлами. Названия файлов разные. В каждом файле заполнен Лист1....

Нужен пример подключения к конкретной DLL
Доброго времени суток. Все ноги истоптал при подключении DLL в проекте с C#, последняя надежда на Вас (форумчан). Если кому не трудно, буду...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Новые блоги и статьи
Мысли в слух. Про "навсегда".
kumehtar 16.04.2026
Подумалось тут, что наверное очень глупо использовать во всяких своих установках понятие "навсегда". Это очень сильное понятие, и я только начинаю понимать край его смысла, не смотря на то что давно. . .
My Business CRM
MaGz GoLd 16.04.2026
Всем привет, недавно возникла потребность создать CRM, для личных нужд. Собственно программа предоставляет из себя базу данных клиентов, в которой можно фиксировать звонки, стадии сделки, а также. . .
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . . а удачный момент так и не приходит.
Фиксация колонок в отчете СКД
Maks 14.04.2026
Фиксация колонок в СКД отчета типа Таблица. Задача: зафиксировать три левых колонки в отчете. Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка) / / . . .
Настройки VS Code
Loafer 13.04.2026
{ "cmake. configureOnOpen": false, "diffEditor. ignoreTrimWhitespace": true, "editor. guides. bracketPairs": "active", "extensions. ignoreRecommendations": true, . . .
Оптимизация кода на разграничение прав доступа к элементам формы
Maks 13.04.2026
Алгоритм из решения ниже реализован на нетиповом документе, разработанного в конфигурации КА2. Задачи, как таковой, поставлено не было, проделанное ниже исключительно моя инициатива. Было так:. . .
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: реализовать контроль корректности заполнения дат назначения. . .
Архитектура слоя интернета для сервера-слоя.
Hrethgir 11.04.2026
В продолжение https:/ / www. cyberforum. ru/ blogs/ 223907/ 10860. html Знаешь что я подумал? Раз мы все источники пишем в голове ветки, то ничего не мешает добавить в голову такой источник, который сам. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru