Привет, сегодня я более-менее разжую простой способ автообвновления на C#.
Что нам понадобиться:
1. Компилятор, я советую Microsoft Visual Studio 2008/2010.
2. Хостинг, (с/без поддержки php).
3. Как всегда точные действия по гайду.
4. Ровнорукость.
Начнём...
1. Берём любой проэкт, к которому вы хотите прикрутить автообновление.
К примеру:
[Ссылки могут видеть только зарегистрированные пользователи. ]2. Заходим в код формочки и пишем после:
Код:
public logo() //Название вашей формы, в моём случаее это logo
{
InitializeComponent();
}
следующее:
Код:
int version = 1; //Версия
3. Теперь создаём файл "versionfile.txt" и заливаем его на хостинг и пишем в нём следующее:
Код:
2
http://хостинг.ру/файлv.4.3.4.5
Как вы поняли 1 строка это текущая версия программы, 2 строка это расположение файла новой версии, только одно НО, название нового файла не должны быть одинаковым со старым, тобишь если старый файл назывался filev2.0.0.exe то новый должен filev3.0.0!
4. Теперь кликаем 2 раза по форме и попадаем на код эвента "load", пишем в нём код:
Код:
if (File.Exists("data")
{
StreamReader SR = new StreamReader("data");
string filetodelte = SR.ReadToEnd();
SR.Close();
if (File.Exists(filetodelte))
{
File.Delete(filetodelte);
File.Delete("data");
}
}
WebRequest request = WebRequest.Create("//Тут полный путь до файла с версией (http://hosting.ru/versionfile)");
HttpWebResponse httpWebResponse = (HttpWebResponse)request.GetResponse();
Stream stream = httpWebResponse.GetResponseStream();
StreamReader reader = new StreamReader(stream, Encoding.GetEncoding(1251));
string noob = reader.ReadToEnd();
reader.Close();
string[] stringSeparators = new string[] { "\n" };
string[] result = noob.Split(stringSeparators, StringSplitOptions.RemoveEmptyEntries);
if (version == (Convert.ToInt32(result[0])))
{
//MessageBox.Show("Установлен последний пакет обновлений!");
}
else
{
string[] jo = result[1].ToString().Split((Convert.ToChar("/"))); // Тут мы получаем имя скачиваемого файла.
MessageBox.Show("Обнаружен пакет обновлений!\nПожалуйста подождите пока он установится!");
WebClient WC = new WebClient(); //Задаём WebClient
WC.DownloadFile(result[1], jo[4]); //Качаем через WebClient
MessageBox.Show("Пакет обновлений был успешно установлен!");
StreamWriter SW = new StreamWriter("data");
SW.Write(Application.ExecutablePath);
SW.Close();
System.Diagnostics.Process.Start(jo[4]);
Application.Exit();
}
Вам надо только сменить ссылку на файл с версией.
5. Запускаем, тестим, всё работает .
Права на гайд принадлежат Nickitee
Автор не несёт ответственности за использованием гайда в плохих целях
By Nickitee for World-Hack.net
________________
We are Ducks. We are birds. We like bread. We cryack. Cryack.