Гайд Установщик на c#

Пользователь
Статус
Оффлайн
Регистрация
14 Дек 2018
Сообщения
264
Реакции[?]
60
Поинты[?]
0
В этой теме я покажу, как можно сделать самый простой установщик
для вашего проекта в виде консольного приложения на c#.

1. Для начала создаём проект:
devenv_WNWBEAmNPx.png
2. Вставляем следующий код в наше приложение:
devenv_qTCTLzSCPc.png
3. В пропуски помещаем ссылки и названия (примеры в комментариях)
devenv_rLanr63aEt.png
В итоге мы получаем удобный и простой установщик, котороый отлично подойдёт новичкам.
Пример работы можно посмотреть тут:
Пожалуйста, авторизуйтесь для просмотра ссылки.

C#:
            Console.Title = "Installer";
            Console.ForegroundColor = ConsoleColor.Gray;
            Console.WriteLine("DownLoading");
            WebClient wc = new WebClient();
            String file = " "; // Название файла (Например: Bin)
            String link = " "; // Ссылка на скачивание ZIP файла (Например: https://pastebin.com/raw/FhSEHTAg )
            String download = wc.DownloadString(link);
            String path = file + ".zip";
            wc.DownloadFile(download, path);
            Console.WriteLine("Extracting");
            const string source = " "; // Путь к установленному архиву (Например: .//Bin.zip)
            string destinationFolder = source.Remove(source.LastIndexOf('.'));
            ZipFile.ExtractToDirectory(" ", Directory.GetCurrentDirectory()); // Распаковка архива в директорию установщика (Например: .//Bin.zip)
            File.Delete(" "); // Удаление распакованного архива в директории установщика (Например: .//Bin.zip)
            Console.ForegroundColor = ConsoleColor.Yellow;
            Console.WriteLine("Successfully!");
            Console.ForegroundColor = ConsoleColor.Gray;
            Console.WriteLine("Press any key to continue...");
            Console.ReadKey();
 
Олдфаг
Статус
Оффлайн
Регистрация
18 Фев 2019
Сообщения
2,826
Реакции[?]
1,853
Поинты[?]
24K
Хорошая идея, но лучше использовать асинхронные методы скачивания и распаковки, с целью сохранения работоспособности окна консоли. Жду инсталлер на Winforms, а лучше вообще на WPF :seemsgood:
UPD: можешь взять код отсюда https://yougame.biz/threads/177299/
 
Эксперт
Статус
Оффлайн
Регистрация
16 Ноя 2017
Сообщения
1,570
Реакции[?]
1,266
Поинты[?]
4K
А ещё советую оборачивать всё в try {} catch() {} и красиво выводить ошибки. Раз сделал консольное скачивание - советую для кросплатформености юзать .net core с собиранием файла в автономную среду через публикацию, ибо у многих возникнут проблемы с отсутствием .NET на ПК (Говорю по личному опыту, лаунчер на .net core, скачиваний более 50К+ и около тысячупроблем у людей из-за отсутствия .net, сделали автономным приложение и проблема почти исчезла)

А вообще советую покурить SquirrelSetup
 
Сверху Снизу