Как сделать самообновление программы?

Темы связанные с инженерными разработками, но не подходящие в другие ветки форума
Ответить
Аватара пользователя
Juri
I/O
I/O
Сообщения: 263
Зарегистрирован: 19 апр 2017, 23:06
Версия LabVIEW: 2021
Благодарил (а): 13 раз
Поблагодарили: 6 раз

Как сделать самообновление программы?

Сообщение Juri »

Есть к примеру ftp сервер от куда я скачаю новый exe файл. В этой части проблем нет. Далее программа должна как-то себя закрыть и заменить саму себя на более новую версию. Как такое сделать?
Полагаю надо сделать отдельную программу установщик. Как ее запустить программно?
PeyNikola
junior
junior
Сообщения: 56
Зарегистрирован: 24 июл 2012, 11:09
Версия LabVIEW: 2011, 202x
Контактная информация:

Re: Как сделать самообновление программы?

Сообщение PeyNikola »

В одной программе можно сделать. Через CMD.
Прога мониторит ftp ресурс. Качает его, если есть более новое, во временную директорию. Далее, предлагает закрыть пользователю или сама переходит на этап закрытия. Перед закрытием, запускается cmd, которая подменит файлы, после освобождения ресурса (получения доступа на перезапись exe).
При этом, нужно чтоб CMD из exe (vi) вызывалась без ожидания завершения операции.
Аватара пользователя
Vitekkz88

Activity Silver Автор
expert
expert
Сообщения: 1100
Зарегистрирован: 21 янв 2014, 15:45
Награды: 3
Версия LabVIEW: 12,13,14
Откуда: Томск
Контактная информация:

Re: Как сделать самообновление программы?

Сообщение Vitekkz88 »

Все эти действия вешаются на кнопку/пункт меню "обновить". После нажатия запускаете .bat-файл, в котором должен быть прописан сценарий: закрыть, удалить, скачать, запустить - это всё доступно с помощью скриптов. Сам файл с сценарием храните где удобно, запускайте его через exec.vi.
Проверку на актуальность обновления обычно делают через расчет CRC файла. Если CRC совпадает с текущим - значит обновления не требуется. Если не совпадает - предлагаем пользователю обновиться.
Инженер - это открыто светящийся интеллект, свободный и не обидный юмор, это легкость и широта мысли...Это воспитанность, тонкость вкусов, хорошая речь, плавно согласованная и без сорных словечек...
-А. И. Солженицын
Ответить
  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Общие»