Приветсвуем вас на Хак Форуме B4G

B4G-akk.ru - предлагает Вашему выбору качественные приватные читы с обширным функционалом для широкого спектра популярных онлайн игр. Выбирая нас, Вы выбираете лучшие цены, быструю и качественную техническую поддержку! Зарегистрируйтесь для расширения своих возможностей.
  • Покупай и довольствуйся функциями и нагибай задоненых геймеров в игре! Лучшие приват читы Купи и разорви сервак Донатеров!
  • Участвуйте и получайте активации , следить за конкурсами тут Конкурсы Если конкурс активный значит конкурс в самом разгаре. Успей испытать удачу и получить приз
         
Реклама, выключите ADblock для просмотра. Цена 150 руб./неделя. Оплата автоматическая.
 
 
       

Делаем апдейтер на C#

Bariga 4 Game

Администратор
Команда форума
Администратор
Activity

0%

Longevity

100%

Привет всем читерам!
Вот я написал экзамен и теперь дня 4-е можно и позадротить)

Вот вам темка про Updater.
1) Создаем проект: С# - Win.Form
2) На форму кидаем:
webBrowser - 1шт (можно и richTextBox, но кода будет больше, так что пойдем более легким путем)
button - 1шт
progressBar - 1шт
label - 2шт
3) Перейдем к коду:

Подключаем:
Код:
using System.IO; using System.Net; using System.Threading; using System.Diagnostics;

webBrowser
Выделяем webBrowser и в свойствах указываем ссылку на фаил txt с описанием(UTF-8)

button
Внутри partial class Form1 : Form пишем

Код:
System.Net.WebClient webClient = new System.Net.WebClient();//Определяем

Для кнопки зададим скачавание фаила в папку с программай
+ прикрутим ко всему этому progressBar и небольшую инфу о скачивание

Двойной клик по кнопке, пишем:

Код:
Uri uri = new Uri("http://Сайт.ru/wh/фаилл.rar");//для примера ссылка на фаил))))))))
webClient.DownloadFileAsync(uri, "фаилл.rar");//сохраняем фаил под именем
//Следующей строчкой задаем заполнение и привязку к действию
webClient.DownloadProgressChanged += new System.Net.DownloadProgressChangedEventHandler(webClient_DownloadProgressChanged);

Ниже задаем заполнение progressBar и инфы о фаиле:

Код:
void webClient_DownloadProgressChanged(object sender, System.Net.DownloadProgressChangedEventArgs e)
{
label1.Text = String.Format("Загружено: {0} Кбайт / {1} Кбайт", e.BytesReceived / 1024, e.TotalBytesToReceive / 1024);//Выводим в лейбл информацию о процессе загрузки
progressBar1.Value = e.ProgressPercentage;// заполняем
}

Теперь зададим действие при завершению загрузки фаила:

Код:
void webClient_DownloadFileCompleted(object sender, System.ComponentModel.AsyncCompletedEventArgs e)
{
MessageBox.Show("Файл скачан!");//по оканчанию загрузки выводим сообщение
progressBar1.Value = 0;//сброс progressBar2
label1.Visible = false;// сброс лейбл

Теперь организуем проверку версий программы:

В папке с программой создаем фаил version.ini и загружаем на сервер. В фаиле пишем версию программы(например 0.1).
Если версия на сервере будет отличатся от версии в папке с программой, то в лейбл выводим соответствующее сообщение.
После скачивания фаила, версия программы в папке с exe будет переписана на версию с сервера...
(я использовал narod2.yandex.ru, на юкозе почему-то проподает запрос....)

Для начала создадим класс для сравнения:

Код:
class VersionChecker
{
public bool NewVersionExists(string localVersion, string versionFromServer)
{
Version verLocal = new Version(localVersion);
Version verWeb = new Version(versionFromServer);
return verLocal < verWeb;
}
}



В Form_Load(двойной клик на форме) пишем:
//----Определение обновлений-------
VersionChecker verChecker = new VersionChecker();
string ServerVersion = "http://*****.narod2.ru/wh/version.ini";
FileStream fs = new FileStream(@"version.ini", FileMode.Open);
StreamReader sr = new StreamReader(fs, Encoding.Default);
string localVersion = sr.ReadToEnd();
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(ServerVersion);// Веб запрос к нашему серверу
HttpWebResponse response = (HttpWebResponse)request.GetResponse(); // Ответ сервера
using (StreamReader reader = new StreamReader(response.GetResponseStream()))// Используем чтение потока данных
{
ServerVersion = reader.ReadToEnd();// Пытаемся получить версию сервера, приобразуя в Int32
/*Сравниваем*/
if (verChecker.NewVersionExists(localVersion, ServerVersion))
label2.Text += "Доступна новая версия";//если версии отличаются
else
label2.Text += "У вас самая последняя версия";//если версии одинаковые
}
fs.Close();//закрываем фаил для перезаписи версий

Теперь организуем перезапись version.ini

В webClient_DownloadFileCompleted дописываем

Код:
//-------Перезаписываем version.ini--
string localVersionFile = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "version.ini");
string ServerVersionFile = "http://******narod2.ru/wh/version.ini";
if (File.Exists(localVersionFile))
{
string localVersion = null;
string ServerVersion = null;
using (StreamReader sr = File.OpenText(localVersionFile))
localVersion = sr.ReadLine(); //Предположим у тебя одна строка в файле
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(ServerVersionFile);// Веб запрос к нашему серверу
HttpWebResponse response = (HttpWebResponse)request.GetResponse(); // Ответ сервера
using (StreamReader reader = new StreamReader(response.GetResponseStream()))// Используем чтение потока данных
ServerVersion = reader.ReadToEnd();
if (!string.IsNullOrWhiteSpace(localVersion))
{
using (StreamWriter sw = new StreamWriter(localVersionFile))
sw.Write(ServerVersion);
}
 
Обезопасте себя и свои финансы и не быть обманутым. Если вы хотите произвести сделку максимально безопасно — свяжитесь с ними.

ГАРАНТ СЕРВИС

 
Яндекс.Метрика Top.Mail.Ru
Приватные разговоры
Помощь Пользователи
    Вы не присоединились ни к одной комнате.
    Сверху