кутях в винде ? т.е. я хочу сделать так чтобы софтина скачивала с моего сервера обновлений новую версию (.msi) а дальше надо как-то её установить так чтобы гарантировано либо новая версия уже была либо старая. Да ещё и в винде как известно программу нельзя удалить/заменить если она в данный момент работает. Гарантировано - в смысле что если юзер внезапно выдернет шнур из розетки в самый неподходящий момент.
Ваш софт запускает некий обновлятор, который уже всё и делает.
ну ок. а что насчёт атомарности?
Это решает не Qt, а создатель инсталятора. К примеру, NSIS.
Да это понятно. Просто тут спрашиваю, вдруг кто в этой теме
программу работающую можно переименовать, запихать с оригинальным названием новый файл, при перезагрузке почистить я в своей либе по обновлению софта именно так и сделал но у меня обновление происходит либо с ftp, либо c файл-сервера, либо с gitlab можно конечно реализаций напихать еще, интерфейс тот же останется, но мне лень. Для моих задач вообще гитлаба достаточно.
Ок, за наводку с переименованием спасибо. У меня ещё всё веселее. Основной алгоритм — должна быть служба с правами систем. и к ней отдельной программаой гуй который работает под юзером. И да, не просто программа скачиваться должна, .msi. Там же подписи и всё такое
https://gitlab.com/Subst/appupdater/ если интересно, слей посмотри кажется этот проект паблик должна быть, если нет скажи, поправлю
лень двигатель прогресса.. это у меня пара программ моих на моей же поддержке работают мне стало сначала лень к ним ездить, а потом даже удаленно заходить к ним. Кинул в гит обновленную версию, кинул в телегу в группу мессагу, чтобы жмакнули кнопку...
боль-дривен девелопмент
не слышал такого выражения шо сей значит?
На работе ковырял один легаси проект, там были две программы, одна из них минипрограмма, которая запускала основную. Если основная падала, то перезапускала через 10 секунд. Эта же минипрограмма обновляла основную. Минипрограмма запускалась с правами system. Вот с этими правами есть проблемы. Мне надо было с основной программы запускать bat скрипты и например выполнять очистку всякого, так все скрипты тоже запускались от system и из-за этого не получалось очистить корзину юзера. Все это было на win XP. К сожалению доступа к этому проекту нету.
Когда что-то запиливается действительно быстро и качественно только тогда когда пригорело и уже достало настолько что засучиваешь рукава и просто берешь и делаешь
а... ну там несколько иная ситуевина. Это один из ВУЗов, у них вводные от министерства меняются со скоростью света. Это первое. Напрямую программ не касается, но касается форм отчетов и т.п. Второе - программы уже лет 5 в работе/разработке. Я время от времени новые фичи добавляю для облегчения работы и рефакторю.
Если не секрет, в какой сфере работаете? У нас сейчас продукт абсолютно аналогичной архитектуры)))
Хах. Я работаю в компании Айдеко. Мы делаем продукты для информационной безопасности. Ну а архитектура как-бы не мудрёная. просто Л - логика.
А, тоже инфбез... Вообще согласен, но кроссплатформенное ПО с такой архитектурой встречается относительно редко
о_О. а ты где работаешь ? можно в личку если НДА
Обсуждают сегодня