PDA

Просмотр полной версии : [Программа] Исходник Updater на C#


Сагочка
03.05.2013, 00:20
Всем добрый вечер. Решил выложить свой исходник Updater.
Вот ссылка: [Ссылки могут видеть только зарегистрированные и активированные пользователи]
Скрин: [Ссылки могут видеть только зарегистрированные и активированные пользователи]
ВТ: [Ссылки могут видеть только зарегистрированные и активированные пользователи] 662df08033e3f2/analysis/1367525807/

Кому нужен качаем .
Пожалуйста не судите строго)

Annedroid
03.05.2013, 10:38
Потому что я поумнел
Вряд ли, ты сначала пишешь, что это легко, а потом перебрасываешь дело на своего знакомого, выдав отмазку школьника, типа ты не на пк, а пишешь ты с калькулятора?

warl0ck
03.05.2013, 12:01
просто исправил полосу загрузки ... [Ссылки могут видеть только зарегистрированные и активированные пользователи]

docc20
05.05.2013, 19:18
автор а как можно сделать что бы писала инфу в том белом окне ? например какие функций и для какой игры

Nickitee
09.05.2013, 13:07
System.Net.WebClient webClient = new System.Net.WebClient();
Uri uri = new Uri("Ссылка на вх");//Ссылка на WallHack
webClient.DownloadFileAsync(uri, @"dxhook.dll");//Под каким именем сохраняем например : Game.dll или dxhook.dll
if (progressBar1.Value == progressBar1.Minimum)
{
progressBar1.Value = progressBar1.Maximum;
}
MessageBox.Show("Успешно!");

Опять бредо-код.

Yukikaze
09.05.2013, 13:30
Nickitee, выглядит знакомым, откуда он?

Nickitee
09.05.2013, 13:37
Nickitee, выглядит знакомым, откуда он?
из 1 поста этой темы.

Yukikaze
09.05.2013, 13:54
Nickitee, да это понятно, правда я его не смотрел, но этот кусок уже видел, только не помню где

razor9113
09.05.2013, 14:02
Nickitee, да это понятно, правда я его не смотрел, но этот кусок уже видел, только не помню где

Этот бредовый код почти везде, мало ли того что он не качает не которые rar zip файлы /facepalm.
По этому я спильзую другой код, крайся дал:cry:

Сагочка
10.05.2013, 12:37
Код стоит для нубов. Пример для них как работает .

крайслер
13.05.2013, 10:01
Пример для них как работает
Ну так он же не работает....

=MegoBotDo=
05.06.2013, 07:14
просто исправил полосу загрузки ... [Ссылки могут видеть только зарегистрированные и активированные пользователи]
Можно и "вт" не просить :D /nyan

Код стоит для нубов. Пример для них как работает .
Я вполне не нуб,меня все Устраивает!
Сагочка, А тебе спасибо!

Rumen183
26.06.2013, 20:33
этот код для прогресс бара взят отсюда [Ссылки могут видеть только зарегистрированные и активированные пользователи]
под номером 4. (4.Скачка файла:
Код:

System.Net.WebClient webClient = new System.Net.WebClient();
Uri uri = new Uri("Ссылка на файл!");
webClient.DownloadFileAsync(uri, @"Имя файла!");
if (progressBar1.Value == progressBar1.Minimum)
{
progressBar1.Value = progressBar1.Maximum;
}
MessageBox.Show("Скачано");

)

Sinyss
26.06.2013, 22:46
этот код для прогресс бара взят отсюда [Ссылки могут видеть только зарегистрированные и активированные пользователи]
И что?

xSkyDev
28.06.2013, 12:51
System.Net.WebClient webClient = new System.Net.WebClient();
Uri uri = new Uri("Ссылка на вх");//Ссылка на WallHack
webClient.DownloadFileAsync(uri, @"dxhook.dll");//Под каким именем сохраняем например : Game.dll или dxhook.dll
if (progressBar1.Value == progressBar1.Minimum)
{
progressBar1.Value = progressBar1.Maximum;
}
MessageBox.Show("Успешно!");

Опять бредо-код.

Чем тебя не устраивает данный код?
У меня на подобном уже давно апдейтер для збт сервера крутится :notme:

static void Main(string[] args)
{
try
{
WebClient wb = new WebClient();
// Versions //
Console.WriteLine("Checking Files... Please wait...");
///////// URLS /////
string data_url = "[Ссылки могут видеть только зарегистрированные и активированные пользователи]";
string pck_url = "[Ссылки могут видеть только зарегистрированные и активированные пользователи]";
string main_pck_url = "[Ссылки могут видеть только зарегистрированные и активированные пользователи]";
//string data_url = "[Ссылки могут видеть только зарегистрированные и активированные пользователи]";
//string pck_url = "[Ссылки могут видеть только зарегистрированные и активированные пользователи]";
//string main_pck_url = "[Ссылки могут видеть только зарегистрированные и активированные пользователи]";
///////////////////
if (!File.Exists("data.list")) File.AppendAllText("data.list", "0");
if (!File.Exists("pck.list")) File.AppendAllText("pck.list", "0");
if (!File.Exists("..//element//7za.exe")) wb.DownloadFile("[Ссылки могут видеть только зарегистрированные и активированные пользователи]", "..//element//7za.exe");
if (!File.Exists("..//element//data//7za.exe")) wb.DownloadFile("[Ссылки могут видеть только зарегистрированные и активированные пользователи]", "..//element//data//7za.exe");
if (!File.Exists("..//element//sPCK.exe")) wb.DownloadFile("[Ссылки могут видеть только зарегистрированные и активированные пользователи]", "..//element//sPCK.exe");
string current_data_version = File.ReadAllText("data.list");
int current_pck_version = Int32.Parse(File.ReadAllText("pck.list"));
string current_dir = Directory.GetCurrentDirectory();
Console.WriteLine("Files Checked Successfully");


///////////// Delete .7.z and old files //////
string[] file_7z_list = new string[Directory.GetFiles("..//element//", "*.7z").Count()];
string[] files_7z = Directory.GetFiles("..//element//", "*.7z");
string[] directory_pck_files = new string[Directory.GetDirectories("..//element//", "*.pck.files").Count()];
string[] directory_files = Directory.GetDirectories("..//element//", "*.pck.files");
Console.WriteLine("Unpacked archives (*.pck.files) count : " + directory_pck_files.Count());
Console.WriteLine("Count of *.7za archives " + file_7z_list.Count());
foreach (string f in files_7z) File.Delete(f);
foreach (string f in directory_files)
{
Console.WriteLine(f.Replace("..//element//", ""));
Directory.Delete(f, true);
}
/////////// End of Delete /////////////

///////////////////

wb.OpenRead(data_url);
string server_data_version = wb.ResponseHeaders["ETag"];
Console.WriteLine("Server Checksum : " + server_data_version);
Console.WriteLine("Client Checksum : " + current_data_version);
/// Checking Data //
if (current_data_version != server_data_version)
{
string size = wb.ResponseHeaders["Content-Length"];
float size_i = (long.Parse(size) / 1024f) / 1024f;
Console.WriteLine("Donwloading Data Update... " + Math.Round(size_i, 2) + " MB");
Directory.SetCurrentDirectory("..//element//data");

wb.DownloadFile(data_url, "update.7z");
///////////////////////
//////UnPacking ///////
///////////////////////
ProcessStartInfo pi = new ProcessStartInfo();
pi.FileName = "7za.exe";
pi.UseShellExecute = false;
pi.CreateNoWindow = true;
pi.Arguments = "x -y update.7z";
Process.Start(pi).WaitForExit();
File.Delete("update.7z");
////////////////////////
////////////////////////
Directory.SetCurrentDirectory(current_dir);
/// Downloading Files //
File.Delete("data.list");
File.AppendAllText("data.list", server_data_version);
}
/////////////////////
///// Checking data.list //////
int server_pck_version = Int32.Parse(wb.DownloadString(pck_url));
if (current_pck_version != server_pck_version)
{

for (int z = current_pck_version; z < server_pck_version; z++)
{

Directory.SetCurrentDirectory("..//element//");
string size = wb.ResponseHeaders["Content-Length"];
float size_i = (long.Parse(size) / 1024f) / 1024f;
Console.WriteLine("Downloading Patch (pck) : " + (z + 1) + Math.Round(size_i, 2) + " MB");
wb.DownloadFile(main_pck_url + (z + 1) + ".7z", (z + 1) + ".7z");
Console.WriteLine("Unpacking Patch (pck) : " + (z + 1) + ".7z");
///////////////////////
//////UnPacking .7z///////
///////////////////////
ProcessStartInfo pi = new ProcessStartInfo();
pi.FileName = "7za.exe";
pi.UseShellExecute = false;
pi.CreateNoWindow = true;
pi.Arguments = "x -y " + (z + 1) + ".7z";
Process.Start(pi).WaitForExit();
File.Delete((z + 1) + ".7z");
Directory.SetCurrentDirectory(current_dir);
////////////////////////
}
//// Getting new list of pck.files ////
string[] new_directory_pck_files = new string[Directory.GetDirectories("..//element//", "*.pck.files").Count()];
string[] new_directory_files = Directory.GetDirectories("..//element//", "*.pck.files");
foreach (string f in new_directory_files)
{
Directory.SetCurrentDirectory("..//element//");
ProcessStartInfo pi = new ProcessStartInfo();
pi.FileName = "sPCK.exe";
pi.UseShellExecute = false;
pi.CreateNoWindow = true;

Console.WriteLine("Adding files to " + f.Replace("..//element//", ""));
pi.Arguments = "-pw -a " + f.Replace("..//element//", "");
Process.Start(pi).WaitForExit();
Directory.Delete(f.Replace("..//element//", ""), true);

}
Directory.SetCurrentDirectory(current_dir);
File.Delete("pck.list");
File.AppendAllText("pck.list", server_pck_version.ToString());

}

Console.WriteLine("Completed");
/// Starting PW ///
Directory.SetCurrentDirectory("..//element//");
// Process.Start("elementclient.exe", " game:cpw");
Console.ReadKey();
}
catch (Exception e)
{
Console.WriteLine(e);
Console.ReadKey();
}

}

Grishkovec
01.07.2013, 02:29
Проблема со скачкой файла!
изначально файл весит
[Ссылки могут видеть только зарегистрированные и активированные пользователи]
Но скаченный почти ничего не вест
[Ссылки могут видеть только зарегистрированные и активированные пользователи]
В чем дело?

xSkyDev
02.07.2013, 10:12
Проблема со скачкой файла!
изначально файл весит
[Ссылки могут видеть только зарегистрированные и активированные пользователи]
Но скаченный почти ничего не вест
[Ссылки могут видеть только зарегистрированные и активированные пользователи]
В чем дело?

Бывало и такое, немного переписал код, вот попробуй.

public static string Check_and_Download(string address, string name, string dir, string cl_version, int for_pck)
{
WebRequest Request = WebRequest.Create(address);
WebResponse Response = Request.GetResponse();
Stream RStream = Response.GetResponseStream();
int Length = int.Parse(Response.Headers["Content-Length"]);
using (var memstream = new MemoryStream())
{
RStream.CopyTo(memstream);
File.WriteAllBytes(name, memstream.ToArray());
}
}

germans1995
27.02.2017, 18:10
А остались у кого исходники?