"Идея обновить новую версию приложения на клиентской машине"
Я прочитал двоичные данные с сервера БД с помощью WCF, создал zip-файл с содержимым, извлек файлы и обновил папку bin нашего приложения.
Я хочу проверить процесс, если все в порядке, а затем обновить корзину или откатить старый файл.
Может ли кто-нибудь дать мне идею для проверки этого процесса?
Есть ли у нас какие-либо идеи контрольной суммы ..
2 ответа
Что ж, если вы используете SharpZipLib для заполнения zip-файла, в ZipFile есть метод TestArchive. объект, который проверит целостность архива и сообщит вам, действителен ли он.
В противном случае вы можете использовать MD5 для создания контрольной суммы в удаленном файле и сравнить его с загруженным файлом, чтобы увидеть, совпадает ли содержимое.
Сохраните на сервере / в Интернете самую последнюю версию проекта, которая находится в сети. например: в файле version.txt укажите значение «2.1.0» или запросите базу данных, если у вас тоже есть доступ.
Ваше приложение, работающее на клиентах, будет периодически читать содержимое файла version.txt, а затем сравнивать его со встроенным (собственным) номером версии.
- Если обнаружен патч или второстепенный выпуск, например 2.1.123, запускается второе приложение (updater.exe), которое незаметно
- выполнить обновление,
- он должен загрузить обновленный (предпочтительно заархивированный) проект с сервера / из Интернета.
- Остановите все запущенные экземпляры.
- Распаковка содержимого.
- Резервное копирование существующих файлов (переименование)
- скопируйте / установите новую версию проекта,
- Запустите приложение (при успешном перезапуске приложение удалит собственный файл резервной копии).
- если обнаружен основной выпуск, например: 3.0.0
- уведомляет пользователя о крупном обновлении
- если пользователь соглашается, загрузите установщик.
- запускает полное обновление установщика.
Это помогает?
Похожие вопросы
Новые вопросы
c#
C# (произносится как «see Sharp») — это высокоуровневый мультипарадигменный язык программирования со статической типизацией, разработанный Microsoft. Код C# обычно нацелен на семейство инструментов и сред выполнения Microsoft .NET, которое включает в себя .NET, .NET Framework, .NET MAUI и Xamarin среди прочих. Используйте этот тег для ответов на вопросы о коде, написанном на C#, или о формальной спецификации C#.