Skip to content
This repository was archived by the owner on Mar 24, 2024. It is now read-only.
/ UniUpdater Public archive

Universal Updater Универсальная Библиотека обновления ваших приложений. Читай ReadMe 📝

Notifications You must be signed in to change notification settings

anomal3/UniUpdater

Repository files navigation

UniUpdater


  • Универсальная библиотека обновлений программ работающая через интернет
  • Минимальный размер библиотеки
  • Лёгок в использовании
  • Асинхронные методы обновления
  • Два вида обновления

Всё просто Параметры есть такие

  • /link - это текстовый файл на вашем сервере с ссылками на файлы которые необходимо скачать
  • /one - путь к файлу ОБНОВЛЕНИЙ.zip который нужно скачать
  • /FS - [FileStart] это какой файл будет запущен по завершению загрузки.

Если к примеру Вы указали параметр

string[] myargs = { "/link|http://siteupdation.ru/link.txt", $"/FS|{Environment.CurrentDirectory}\\test.bat" };

1 строкой мы указываем корневую директорию, откуда будем брать файлы а затем указываем с новой строки файлы в этой директории

http://siteupdation.ru/upd12_13/
Launcher.deps.json
patcher/test.exe
Launcher.dll
Launcher.exe
Ookii.Dialogs.WinForms.dll
System.Resources.Extensions.dll
Launcher.runtimeconfig.dev.json
Launcher.runtimeconfig.json
EmbedResource.dll
NLog.dll
NLog.config
patcher/Launcher_Property.xml

И если у Вас есть поддиректория в обновлении как в примере patcher/Launcher_Property.xml, но в целевой папке её нет, она будет создана автоматически.

Так же теперь можно записать всё в один архив и поместить на сервер (если в обновлении много файлов с поддиректориями) это кстати и сподвигло меня написать такое, так как в моём обновлении я добавил CefSharp а там куча файлов и поддиректорий.

Вызвать скачивание одним архивом можно как параметром /one|Путь_к_файлу.zip Так и файлом откуда берём файл, а пишем так

string[] myargs = { "/link|http://siteupdation.ru/link.txt", $"/FS|{Environment.CurrentDirectory}\\test.bat" };

link.txt к которому путь (условно)

http://update.mysite.ru/launcher/update/
one|http://update.mysite.ru/launcher/update.zip

Пример использования в проекте

//Пример с окошками
string[] myargs = { "/link|http://SITEUPDATION.ru/update/link.txt", $"/FS|{Environment.CurrentDirectory}\\test.bat" };
string[] myargs2 = { "/link|http://SITEUPDATION.ru/update/link2.txt", $"/FS|{Environment.CurrentDirectory}\\test.bat" };
string[] onearg = { "/one|http://SITEUPDATION.ru/lupdate/update.zip", $"/FS|{Environment.CurrentDirectory}\\test.bat" };
Updater updater = new Updater();
updater.TopMostWindow = true;
 
#region Если не нужно отдельного окна, а можно воспользоваться UserControl
 
if (!checkBox_Window.Checked)
    flowLayoutPanel1.Controls.Add(updater);
#endregion
 
updater.Start(onearg, checkBox_Window.Checked);
 
//Пример со считывание параметров
OneUpdate oneUpdate = new OneUpdate();
oneUpdate.progressBar = progressBar1;
oneUpdate.lblPerc = lblPerc;
oneUpdate.lblSpeed= lblSpeed;
oneUpdate.lblTotal= lblTotal;
oneUpdate.lblUpdate = lblUpdate;
 
oneUpdate.DownloadFile("http://SITEUPDATION.ru/update/update.zip", Environment.CurrentDirectory + "\\update.zip");
немного скринов результата

Result!

Result!

Result!

About

Universal Updater Универсальная Библиотека обновления ваших приложений. Читай ReadMe 📝

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages