Форум программистов, компьютерный форум, киберфорум
C# Windows Forms
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/7: Рейтинг темы: голосов - 7, средняя оценка - 5.00
 Аватар для pomkalk
365 / 247 / 24
Регистрация: 03.04.2011
Сообщений: 558
Записей в блоге: 1

Загрузить dll, проверить версию, выгрузить и заменить на новую

05.05.2015, 08:19. Показов 1571. Ответов 10
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Задача такая, подключить динамическую DLL и получить от туда версию это DLL, в случае если сервер скажет что есть версия новее, выгрузить эту DLL скачать новую и заменить. Далее просто запустить! Собственно вопрос только в одном, как ее выгрузить, что бы можно было файл DLL заменить на вновь скаченный.
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
05.05.2015, 08:19
Ответы с готовыми решениями:

Загрузить DLL, получить из неё типы, выгрузить
Привет. Есть такой метод: static public void LoadScripts(string dllPath) { scripts.Clear();//чистим текущие...

Как выгрузить базу SQL в локальную версию 1с?
Огромная просьба помочь. Необходимо выгрузить базу данных из SQL версии 1с Предприятие 7.7 в локальную. Так то она не поддерживает прямую...

ТЧ.Загрузить(Запрос.Выполнить().Выгрузить())
программно Заполняю табличную часть документа, предварительно получив её через табчасть = получитьОбъект().табличная часть; ...

10
.NET C#,ASP.NET MVC
Эксперт .NET
 Аватар для lvlkoo
594 / 507 / 224
Регистрация: 16.10.2010
Сообщений: 1,902
05.05.2015, 09:05
А разве она держится в памяти?
0
 Аватар для pomkalk
365 / 247 / 24
Регистрация: 03.04.2011
Сообщений: 558
Записей в блоге: 1
05.05.2015, 09:15  [ТС]
Ммм, да, после загрузки DLL она в памяти, даже после освобождения, она все еще в памяти, и следовательно файл dll используется системой и не дает его заменить.
В настоящий момент я скачиваю файлы и в конфигурации программы ставлю "заменить старые файлы на новые" при следующем запуске и перезапускаю программу!
0
93 / 94 / 51
Регистрация: 19.06.2013
Сообщений: 323
05.05.2015, 09:22
pomkalk, попробуйте перезапустить приложение
C#
1
Application.Restart();
0
.NET C#,ASP.NET MVC
Эксперт .NET
 Аватар для lvlkoo
594 / 507 / 224
Регистрация: 16.10.2010
Сообщений: 1,902
05.05.2015, 09:22
Покажите как имортируете
0
93 / 94 / 51
Регистрация: 19.06.2013
Сообщений: 323
05.05.2015, 09:26
pomkalk, выгружаете с помощью FreeLibrary? Проверяли, возвращает true?
0
 Аватар для pomkalk
365 / 247 / 24
Регистрация: 03.04.2011
Сообщений: 558
Записей в блоге: 1
05.05.2015, 09:36  [ТС]
Приложение я и так перезапускаю))В этом не проблема
FreeLibrary от kernel не пробывал, попробую отпишусь

Добавлено через 6 минут
Нет, c++сная FreeLibrary не подойдет, в причину вдаваться не надо, те действия которые применяются для загрузки и выгрузки библиотеке таким способом не подходят, так же не подходит вариант с новым доменом.
0
93 / 94 / 51
Регистрация: 19.06.2013
Сообщений: 323
05.05.2015, 10:18
Цитата Сообщение от pomkalk Посмотреть сообщение
те действия которые применяются для загрузки и выгрузки библиотеке таким способом не подходят
Тогда и загружайте через LoadLibrary Библиотека то у Вас нативная или "сишарповская"?
0
 Аватар для pomkalk
365 / 247 / 24
Регистрация: 03.04.2011
Сообщений: 558
Записей в блоге: 1
05.05.2015, 10:23  [ТС]
Это понятно что загружать через LoadLibrary))Библиотеки c#повские только))
0
93 / 94 / 51
Регистрация: 19.06.2013
Сообщений: 323
05.05.2015, 10:31
pomkalk, ну тогда и нужно говорить об этом с самого начала! Вы же явно не новенький на форуме))

Добавлено через 1 минуту
Цитата Сообщение от pomkalk Посмотреть сообщение
не подходит вариант с новым доменом
А это тогда почему не подходит?
0
 Аватар для pomkalk
365 / 247 / 24
Регистрация: 03.04.2011
Сообщений: 558
Записей в блоге: 1
05.05.2015, 11:00  [ТС]
ммм, одна из причин она не грузит класс и выдает ошибку на память кажется
а все длл с помощью одного интерфейса наследуются и по сути их можно назвать расширениями для программы
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
05.05.2015, 11:00
Помогаю со студенческими работами здесь

Загрузить файл в память и выгрузить
Задача в том, чтоб написать приблуду для DOS для "многозадачности" Столкнулся с проблемами: Нужно загрузить com в память. Думаю, что...

Загрузить/Выгрузить color и font
Я создал TextBox указал ему через fontDialog параметры текста, через colorDialog указал ForeColor и BackColor. Подскажите, как параметры...

Выгрузить остатки из УТ и загрузить в Бухгалтерию
Добрый день. Как загрузить остатки из обработки(остатки из УТ) в регистр накопления(точнее в документ, в БУХ)?

Как загрузить все My.Settings в txt и выгрузить
Добрый день, Господа! Увидел у Памирыча на сайте такую фичу. For Each x As System.Configuration.SettingsProperty In...

Загрузить\Выгрузить файл(ы) на FTP в пассивном режиме
Всем привет! Столкнулся с проблемой, обмена с FTP (на IIS) с помощью Net.FtpWebRequest в пассивном режиме. При попытке загрузить...


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

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
Новые блоги и статьи
SDL3 для Desktop (MinGW): Рисуем цветные прямоугольники с помощью рисовальщика SDL3 на Си и C++
8Observer8 17.03.2026
Содержание блога Финальные проекты на Си и на C++: finish-rectangles-sdl3-c. zip finish-rectangles-sdl3-cpp. zip
Символические и жёсткие ссылки в Linux.
algri14 15.03.2026
Существует два типа ссылок — символические и жёсткие. Ссылка в Linux — это запись в каталоге, которая может указывать либо на inode «файла-ИСТОЧНИКА», тогда это будет «жёсткая ссылка» (hard link),. . .
[Owen Logic] Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ФедосеевПавел 14.03.2026
Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора ВВЕДЕНИЕ Выполняя задание на управление насосной группой заполнения резервуара,. . .
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru