PHP Code:
namespace Metin2Autopatcher
{
using System;
using System.ComponentModel;
using System.Diagnostics;
using System.Drawing;
using System.IO;
using System.Net;
using System.Runtime.CompilerServices;
using System.Security.Cryptography;
using System.Windows.Forms;
[DesignerGenerated]
public class Form1 : Form
{
[AccessedThroughProperty("AccountverwaltungAktiviert")]
private PictureBox _AccountverwaltungAktiviert;
[AccessedThroughProperty("AccountverwaltungInactive")]
private PictureBox _AccountverwaltungInactive;
[AccessedThroughProperty("AccountverwaltungMouseover")]
private PictureBox _AccountverwaltungMouseover;
[AccessedThroughProperty("BeendenAktiviert")]
private PictureBox _BeendenAktiviert;
[AccessedThroughProperty("BeendenInactive")]
private PictureBox _BeendenInactive;
[AccessedThroughProperty("BeendenMouseover")]
private PictureBox _BeendenMouseover;
[AccessedThroughProperty("Button1")]
private Button _Button1;
[AccessedThroughProperty("Label1")]
private Label _Label1;
[AccessedThroughProperty("Label2")]
private Label _Label2;
[AccessedThroughProperty("Label3")]
private Label _Label3;
[AccessedThroughProperty("Label4")]
private Label _Label4;
[AccessedThroughProperty("Label5")]
private Label _Label5;
[AccessedThroughProperty("MyWebClient")]
private WebClient _MyWebClient;
[AccessedThroughProperty("NeuenAccountAktiviert")]
private PictureBox _NeuenAccountAktiviert;
[AccessedThroughProperty("NeuenAccountInactive")]
private PictureBox _NeuenAccountInactive;
[AccessedThroughProperty("NeuenAccountMouseover")]
private PictureBox _NeuenAccountMouseover;
[AccessedThroughProperty("Panel1")]
private Panel _Panel1;
[AccessedThroughProperty("PictureBox1")]
private PictureBox _PictureBox1;
[AccessedThroughProperty("PictureBox2")]
private PictureBox _PictureBox2;
[AccessedThroughProperty("ProgressBar1")]
private ProgressBar _ProgressBar1;
[AccessedThroughProperty("ProgressBar2")]
private ProgressBar _ProgressBar2;
[AccessedThroughProperty("RichTextBox1")]
private RichTextBox _RichTextBox1;
[AccessedThroughProperty("RichTextBox2")]
private RichTextBox _RichTextBox2;
[AccessedThroughProperty("SpieloptionenAktiviert")]
private PictureBox _SpieloptionenAktiviert;
[AccessedThroughProperty("SpielOptionenInactive")]
private PictureBox _SpielOptionenInactive;
[AccessedThroughProperty("SpieloptionenMouseover")]
private PictureBox _SpieloptionenMouseover;
[AccessedThroughProperty("StartenAktiviert")]
private PictureBox _StartenAktiviert;
[AccessedThroughProperty("StartenInactive")]
private PictureBox _StartenInactive;
[AccessedThroughProperty("StartenMouseover")]
private PictureBox _StartenMouseover;
[AccessedThroughProperty("Timer1")]
private System.Windows.Forms.Timer _Timer1;
[AccessedThroughProperty("UpdateWebClient")]
private WebClient _UpdateWebClient;
[AccessedThroughProperty("WebBrowser1")]
private WebBrowser _WebBrowser1;
[AccessedThroughProperty("WebBrowser2")]
private WebBrowser _WebBrowser2;
[AccessedThroughProperty("WebBrowser3")]
private WebBrowser _WebBrowser3;
private string Abort_btn;
private string AccVerw;
private string ActualClientVer_label;
private string APfad;
private string[] aryTextFile;
private int Cancel;
private string CheckingFile_label;
private IContainer components;
private string ConfigExeError_msg;
private string ConfigExeError_msg_title;
private string Connecting_label;
private int DateiAnzahl;
private string DeletingFile_label;
private string DownloadComplete_label;
private string Downloading_label;
private string globalEndpfad;
private string LineOfText;
private string NewAcc;
private string outdatedClientVersion_label;
private string PatchComplete_label;
private string PatchconfigError_msg;
private string PatchconfigError_msg_title;
private int PatchedData;
private string PatcherUpdate_msg;
private string PatcherUpdate_msg_title;
private string PatchlistError1_msg;
private string PatchlistError1_msg_title;
private string PatchlistError2_msg;
private string PatchlistError2_msg_title;
private string PatchlistError3_msg;
private string PatchlistError4_msg;
private string PatchlistError5_msg;
private string ReadPatchlist_label;
private string ServerURL;
private string StartAppName;
private string StartClientError_msg;
private string StartClientError_msg_title;
private string StartingInstall_label;
private int uFileSize;
private string UnloadMetin2Request_msg;
private string UnloadMetin2Request_msg_title;
private string UpdateComplete_label;
private int UpdateDirectoryCreated;
private string UpdatingPatcher_label;
private string Version;
private string WaitingforFile_label;
public Form1()
{
base.FormClosing += new FormClosingEventHandler(this.me_close);
base.Load += new EventHandler(this.Form1_Load);
this.APfad = Application.StartupPath + @"\";
this.aryTextFile = new string[4];
this.PatchedData = 0;
this.Cancel = 0;
this.MyWebClient = new WebClient();
this.UpdateWebClient = new WebClient();
this.UpdateDirectoryCreated = 0;
this.InitializeComponent();
}
[DebuggerStepThrough, CompilerGenerated]
private void _Lambda$__1(object a0, WebBrowserDocumentCompletedEventArgs a1)
{
this.Patch();
}
private void AccountVerwaltungAktiviert_MouseEnter(object sender, EventArgs e)
{
this.AccountverwaltungMouseover.Visible = true;
this.AccountverwaltungAktiviert.Visible = false;
}
private void AccountverwaltungMouseover_Click(object sender, EventArgs e)
{
Process.Start(this.AccVerw);
}
private void AccountVerwaltungMouseOver_MouseLeave(object sender, EventArgs e)
{
this.AccountverwaltungAktiviert.Visible = true;
this.AccountverwaltungMouseover.Visible = false;
}
private void BeendenAktiviert_MouseEnter(object sender, EventArgs e)
{
this.BeendenMouseover.Visible = true;
this.BeendenAktiviert.Visible = false;
}
private void BeendenMouseOver_Click(object sender, EventArgs e)
{
this.Cancel = 1;
this.Close();
Application.Exit();
}
private void BeendenMouseOver_MouseLeave(object sender, EventArgs e)
{
this.BeendenAktiviert.Visible = true;
this.BeendenMouseover.Visible = false;
}
private void Button1_Click(object sender, EventArgs e)
{
this.MyWebClient.CancelAsync();
this.Cancel = 1;
this.Height = 400;
this.Panel1.Visible = false;
this.SaveSize();
}
private void CheckVersion()
{
if (this.Version == "x")
{
this.WebBrowser2.Navigate(this.ServerURL + "patchlist.php");
}
else
{
this.WebBrowser3.Navigate(this.ServerURL + "clientversion.php");
}
}
private void Config()
{
this.Show();
this.Visible = true;
StreamReader reader = new StreamReader(this.APfad + "patchconfig.cfg", false);
this.RichTextBox2.Text = reader.ReadToEnd();
reader.Close();
this.ServerURL = Conversions.ToString(this.RichTextBox2.Lines.GetValue(0));
this.NewAcc = Conversions.ToString(this.RichTextBox2.Lines.GetValue(1));
this.AccVerw = Conversions.ToString(this.RichTextBox2.Lines.GetValue(2));
this.Version = Conversions.ToString(this.RichTextBox2.Lines.GetValue(20));
string zuDurchsuchenderText = Conversions.ToString(this.RichTextBox2.Lines.GetValue(3));
string str = Conversions.ToString(this.RichTextBox2.Lines.GetValue(4));
string str2 = Conversions.ToString(this.RichTextBox2.Lines.GetValue(5));
string str3 = Conversions.ToString(this.RichTextBox2.Lines.GetValue(6));
string str10 = Conversions.ToString(this.RichTextBox2.Lines.GetValue(7));
string str11 = Conversions.ToString(this.RichTextBox2.Lines.GetValue(8));
string str12 = Conversions.ToString(this.RichTextBox2.Lines.GetValue(9));
string str5 = Conversions.ToString(this.RichTextBox2.Lines.GetValue(10));
string str6 = Conversions.ToString(this.RichTextBox2.Lines.GetValue(11));
string str7 = Conversions.ToString(this.RichTextBox2.Lines.GetValue(12));
string str13 = Conversions.ToString(this.RichTextBox2.Lines.GetValue(13));
string str14 = Conversions.ToString(this.RichTextBox2.Lines.GetValue(14));
string str15 = Conversions.ToString(this.RichTextBox2.Lines.GetValue(15));
string str16 = Conversions.ToString(this.RichTextBox2.Lines.GetValue(0x10));
string str17 = Conversions.ToString(this.RichTextBox2.Lines.GetValue(0x11));
string str18 = Conversions.ToString(this.RichTextBox2.Lines.GetValue(0x12));
string str9 = Conversions.ToString(this.RichTextBox2.Lines.GetValue(0x13));
this.ServerURL = Conversions.ToString(this.SuchenUndErsetzen(this.ServerURL, "URL_SERVER: ", ""));
this.Version = Conversions.ToString(this.SuchenUndErsetzen(this.Version, "CLIENTVERSION: ", ""));
string serverURL = this.ServerURL;
if (Conversions.ToString(serverURL[serverURL.Length - 1]) != @"\")
{
this.ServerURL = this.ServerURL + @"\";
}
this.NewAcc = Conversions.ToString(this.SuchenUndErsetzen(this.NewAcc, "URL_NEW_ACCOUNT: ", ""));
this.AccVerw = Conversions.ToString(this.SuchenUndErsetzen(this.AccVerw, "URL_MANAGE: ", ""));
zuDurchsuchenderText = Conversions.ToString(this.SuchenUndErsetzen(zuDurchsuchenderText, "IMAGE_BACKGROUND: ", ""));
str = Conversions.ToString(this.SuchenUndErsetzen(str, "IMAGE_MANAGE_DISENABLED: ", ""));
str2 = Conversions.ToString(this.SuchenUndErsetzen(str2, "IMAGE_MANAGE_ENABLED: ", ""));
str3 = Conversions.ToString(this.SuchenUndErsetzen(str3, "IMAGE_MANAGE_SELECTED: ", ""));
str10 = Conversions.ToString(this.SuchenUndErsetzen(str10, "IMAGE_NEW_ACCOUNT_DISENABLED: ", ""));
str11 = Conversions.ToString(this.SuchenUndErsetzen(str11, "IMAGE_NEW_ACCOUNT_ENABLED: ", ""));
str12 = Conversions.ToString(this.SuchenUndErsetzen(str12, "IMAGE_NEW_ACCOUNT_SELECTED: ", ""));
str5 = Conversions.ToString(this.SuchenUndErsetzen(str5, "IMAGE_EXIT_DISENABLED: ", ""));
str6 = Conversions.ToString(this.SuchenUndErsetzen(str6, "IMAGE_EXIT_ENABLED: ", ""));
str7 = Conversions.ToString(this.SuchenUndErsetzen(str7, "IMAGE_EXIT_SELECTED: ", ""));
str13 = Conversions.ToString(this.SuchenUndErsetzen(str13, "IMAGE_SETTINGS_DISENABLED: ", ""));
str14 = Conversions.ToString(this.SuchenUndErsetzen(str14, "IMAGE_SETTINGS_ENABLED: ", ""));
str15 = Conversions.ToString(this.SuchenUndErsetzen(str15, "IMAGE_SETTINGS_SELECTED: ", ""));
str16 = Conversions.ToString(this.SuchenUndErsetzen(str16, "IMAGE_START_DISENABLED: ", ""));
str17 = Conversions.ToString(this.SuchenUndErsetzen(str17, "IMAGE_START_ENABLED: ", ""));
str18 = Conversions.ToString(this.SuchenUndErsetzen(str18, "IMAGE_START_SELECTED: ", ""));
str9 = Conversions.ToString(this.SuchenUndErsetzen(str9, "IMAGE_LOADING: ", ""));
this.PictureBox1.Load(str9);
this.Panel1.BackgroundImage = this.PictureBox1.Image;
this.PictureBox2.Load(zuDurchsuchenderText);
try
{
this.AccountverwaltungInactive.Load(str);
this.AccountverwaltungAktiviert.Load(str2);
this.AccountverwaltungMouseover.Load(str3);
this.NeuenAccountInactive.Load(str10);
this.NeuenAccountAktiviert.Load(str11);
this.NeuenAccountMouseover.Load(str12);
this.BeendenInactive.Load(str5);
this.BeendenAktiviert.Load(str6);
this.BeendenMouseover.Load(str7);
this.SpielOptionenInactive.Load(str13);
this.SpieloptionenAktiviert.Load(str14);
this.SpieloptionenMouseover.Load(str15);
this.StartenInactive.Load(str16);
this.StartenAktiviert.Load(str17);
this.StartenMouseover.Load(str18);
}
catch (Exception exception1)
{
ProjectData.SetProjectError(exception1);
MessageBox.Show(exception1.ToString());
ProjectData.ClearProjectError();
}
this.StartAppName = Conversions.ToString(this.SuchenUndErsetzen(Conversions.ToString(this.RichTextBox2.Lines.GetValue(0x15)), "START_APP: ", ""));
this.Abort_btn = Conversions.ToString(this.SuchenUndErsetzen(Conversions.ToString(this.RichTextBox2.Lines.GetValue(0x16)), "Abort_btn = ", ""));
this.ActualClientVer_label = Conversions.ToString(this.SuchenUndErsetzen(Conversions.ToString(this.RichTextBox2.Lines.GetValue(0x17)), "ActualClientVer_label = ", ""));
this.outdatedClientVersion_label = Conversions.ToString(this.SuchenUndErsetzen(Conversions.ToString(this.RichTextBox2.Lines.GetValue(0x18)), "outdatetClientVersion_label = ", ""));
this.UpdateComplete_label = Conversions.ToString(this.SuchenUndErsetzen(Conversions.ToString(this.RichTextBox2.Lines.GetValue(0x19)), "UpdateComplete_label = ", ""));
this.StartingInstall_label = Conversions.ToString(this.SuchenUndErsetzen(Conversions.ToString(this.RichTextBox2.Lines.GetValue(0x1a)), "StartingInstall_label = ", ""));
this.Downloading_label = Conversions.ToString(this.SuchenUndErsetzen(Conversions.ToString(this.RichTextBox2.Lines.GetValue(0x1b)), "Downloading_label = ", ""));
this.UpdatingPatcher_label = Conversions.ToString(this.SuchenUndErsetzen(Conversions.ToString(this.RichTextBox2.Lines.GetValue(0x1c)), "UpdatingPatcher_label = ", ""));
this.DownloadComplete_label = Conversions.ToString(this.SuchenUndErsetzen(Conversions.ToString(this.RichTextBox2.Lines.GetValue(0x1d)), "DownloadComplete_label = ", ""));
this.PatchComplete_label = Conversions.ToString(this.SuchenUndErsetzen(Conversions.ToString(this.RichTextBox2.Lines.GetValue(30)), "PatchComplete_label = ", ""));
this.WaitingforFile_label = Conversions.ToString(this.SuchenUndErsetzen(Conversions.ToString(this.RichTextBox2.Lines.GetValue(0x1f)), "WaitingforFile_label = ", ""));
this.DeletingFile_label = Conversions.ToString(this.SuchenUndErsetzen(Conversions.ToString(this.RichTextBox2.Lines.GetValue(0x20)), "DeletingFile_label = ", ""));
this.PatcherUpdate_msg = Conversions.ToString(this.SuchenUndErsetzen(Conversions.ToString(this.RichTextBox2.Lines.GetValue(0x21)), "PatcherUpdate_msg = ", ""));
this.PatcherUpdate_msg_title = Conversions.ToString(this.SuchenUndErsetzen(Conversions.ToString(this.RichTextBox2.Lines.GetValue(0x22)), "PatcherUpdate_msg_title = ", ""));
this.CheckingFile_label = Conversions.ToString(this.SuchenUndErsetzen(Conversions.ToString(this.RichTextBox2.Lines.GetValue(0x23)), "CheckingFile_label = ", ""));
this.ReadPatchlist_label = Conversions.ToString(this.SuchenUndErsetzen(Conversions.ToString(this.RichTextBox2.Lines.GetValue(0x24)), "ReadPatchlist_label = ", ""));
this.ConfigExeError_msg = Conversions.ToString(this.SuchenUndErsetzen(Conversions.ToString(this.RichTextBox2.Lines.GetValue(0x25)), "ConfigExeError_msg = ", ""));
this.ConfigExeError_msg_title = Conversions.ToString(this.SuchenUndErsetzen(Conversions.ToString(this.RichTextBox2.Lines.GetValue(0x26)), "ConfigExeError_msg_title = ", ""));
this.StartClientError_msg = Conversions.ToString(this.SuchenUndErsetzen(Conversions.ToString(this.RichTextBox2.Lines.GetValue(0x27)), "StartClientError_msg = ", ""));
this.StartClientError_msg_title = Conversions.ToString(this.SuchenUndErsetzen(Conversions.ToString(this.RichTextBox2.Lines.GetValue(40)), "StartClientError_msg_title = ", ""));
this.PatchlistError1_msg = Conversions.ToString(this.SuchenUndErsetzen(Conversions.ToString(this.RichTextBox2.Lines.GetValue(0x29)), "PatchlistError1_msg = ", ""));
this.PatchlistError2_msg = Conversions.ToString(this.SuchenUndErsetzen(Conversions.ToString(this.RichTextBox2.Lines.GetValue(0x2a)), "PatchlistError2_msg = ", ""));
this.PatchlistError3_msg = Conversions.ToString(this.SuchenUndErsetzen(Conversions.ToString(this.RichTextBox2.Lines.GetValue(0x2b)), "PatchlistError3_msg = ", ""));
this.PatchlistError4_msg = Conversions.ToString(this.SuchenUndErsetzen(Conversions.ToString(this.RichTextBox2.Lines.GetValue(0x2c)), "PatchlistError4_msg = ", ""));
this.PatchlistError5_msg = Conversions.ToString(this.SuchenUndErsetzen(Conversions.ToString(this.RichTextBox2.Lines.GetValue(0x2d)), "PatchlistError5_msg = ", ""));
this.PatchlistError1_msg_title = Conversions.ToString(this.SuchenUndErsetzen(Conversions.ToString(this.RichTextBox2.Lines.GetValue(0x2e)), "PatchlistError1_msg_title = ", ""));
this.PatchlistError2_msg_title = Conversions.ToString(this.SuchenUndErsetzen(Conversions.ToString(this.RichTextBox2.Lines.GetValue(0x2f)), "PatchlistError2_msg_title = ", ""));
this.PatchconfigError_msg = Conversions.ToString(this.SuchenUndErsetzen(Conversions.ToString(this.RichTextBox2.Lines.GetValue(0x30)), "PatchconfigError_msg = ", ""));
this.PatchconfigError_msg_title = Conversions.ToString(this.SuchenUndErsetzen(Conversions.ToString(this.RichTextBox2.Lines.GetValue(0x31)), "PatchconfigError_msg_title = ", ""));
this.Connecting_label = Conversions.ToString(this.SuchenUndErsetzen(Conversions.ToString(this.RichTextBox2.Lines.GetValue(50)), "Connecting_label = ", ""));
this.UnloadMetin2Request_msg = Conversions.ToString(this.SuchenUndErsetzen(Conversions.ToString(this.RichTextBox2.Lines.GetValue(0x33)), "UnloadMetin2Request_msg = ", ""));
this.UnloadMetin2Request_msg_title = Conversions.ToString(this.SuchenUndErsetzen(Conversions.ToString(this.RichTextBox2.Lines.GetValue(0x34)), "UnloadMetin2Request_msg_title = ", ""));
}
[DebuggerNonUserCode]
protected override void Dispose(bool disposing)
{
try
{
if (disposing && (this.components != null))
{
this.components.Dispose();
}
}
finally
{
base.Dispose(disposing);
}
}
private bool DoesProcessExists(string PName)
{
return (Process.GetProcessesByName(PName).Length >= 1);
}
private void fileDownloader_DownloadFileCompleted(object sender, AsyncCompletedEventArgs e)
{
this.Label5.Text = this.DownloadComplete_label;
this.ProgressBar2.Value = 0;
this.Height = 450;
this.Button1.Left = 0x200;
this.Button1.Top = 0x1a;
this.Patch();
}
private void Form1_Load(object sender, EventArgs e)
{
this.SetStyle(ControlStyles.DoubleBuffer, true);
this.SetStyle(ControlStyles.AllPaintingInWmPaint, true);
try
{
this.Config();
}
catch (Exception exception1)
{
ProjectData.SetProjectError(exception1);
this.Hide();
if (this.PatchconfigError_msg == "")
{
this.PatchconfigError_msg = "Failed to load patchconfig.cfg";
}
if (this.PatchconfigError_msg_title == "")
{
this.PatchconfigError_msg = "ERROR";
}
Interaction.MsgBox(this.PatchconfigError_msg, MsgBoxStyle.Critical, this.PatchconfigError_msg_title);
Application.Exit();
ProjectData.ClearProjectError();
}
this.Label1.Parent = this.PictureBox2;
this.Label2.Parent = this.PictureBox2;
this.Label3.Parent = this.PictureBox2;
this.StartenAktiviert.Visible = false;
this.Height = 450;
this.WebBrowser1.Navigate(this.ServerURL + "news");
this.Button1.Text = this.Abort_btn;
this.Label4.Text = this.Connecting_label;
this.CheckVersion();
}
[DebuggerStepThrough]
private void InitializeComponent()
{
this.components = new System.ComponentModel.Container();
ComponentResourceManager manager = new ComponentResourceManager(typeof(Form1));
this.WebBrowser1 = new WebBrowser();
this.PictureBox2 = new PictureBox();
this.StartenAktiviert = new PictureBox();
this.SpieloptionenAktiviert = new PictureBox();
this.BeendenAktiviert = new PictureBox();
this.WebBrowser2 = new WebBrowser();
this.StartenMouseover = new PictureBox();
this.SpieloptionenMouseover = new PictureBox();
this.BeendenMouseover = new PictureBox();
this.AccountverwaltungAktiviert = new PictureBox();
this.AccountverwaltungMouseover = new PictureBox();
this.NeuenAccountMouseover = new PictureBox();
this.NeuenAccountAktiviert = new PictureBox();
this.Label2 = new Label();
this.Label3 = new Label();
this.RichTextBox1 = new RichTextBox();
this.RichTextBox2 = new RichTextBox();
this.Label1 = new Label();
this.Timer1 = new System.Windows.Forms.Timer(this.components);
this.StartenInactive = new PictureBox();
this.SpielOptionenInactive = new PictureBox();
this.NeuenAccountInactive = new PictureBox();
this.BeendenInactive = new PictureBox();
this.AccountverwaltungInactive = new PictureBox();
this.ProgressBar1 = new ProgressBar();
this.Label4 = new Label();
this.Label5 = new Label();
this.Button1 = new Button();
this.ProgressBar2 = new ProgressBar();
this.PictureBox1 = new PictureBox();
this.Panel1 = new Panel();
this.WebBrowser3 = new WebBrowser();
((ISupportInitialize) this.PictureBox2).BeginInit();
((ISupportInitialize) this.StartenAktiviert).BeginInit();
((ISupportInitialize) this.SpieloptionenAktiviert).BeginInit();
((ISupportInitialize) this.BeendenAktiviert).BeginInit();
((ISupportInitialize) this.StartenMouseover).BeginInit();
((ISupportInitialize) this.SpieloptionenMouseover).BeginInit();
((ISupportInitialize) this.BeendenMouseover).BeginInit();
((ISupportInitialize) this.AccountverwaltungAktiviert).BeginInit();
((ISupportInitialize) this.AccountverwaltungMouseover).BeginInit();
((ISupportInitialize) this.NeuenAccountMouseover).BeginInit();
((ISupportInitialize) this.NeuenAccountAktiviert).BeginInit();
((ISupportInitialize) this.StartenInactive).BeginInit();
((ISupportInitialize) this.SpielOptionenInactive).BeginInit();
((ISupportInitialize) this.NeuenAccountInactive).BeginInit();
((ISupportInitialize) this.BeendenInactive).BeginInit();
((ISupportInitialize) this.AccountverwaltungInactive).BeginInit();
((ISupportInitialize) this.PictureBox1).BeginInit();
this.Panel1.SuspendLayout();
this.SuspendLayout();
Point point = new Point(0x10, 15);
this.WebBrowser1.Location = point;
Size size = new Size(20, 20);
this.WebBrowser1.MinimumSize = size;
this.WebBrowser1.Name = "WebBrowser1";
this.WebBrowser1.ScrollBarsEnabled = false;
size = new Size(0x1b6, 0x16e);
this.WebBrowser1.Size = size;
this.WebBrowser1.TabIndex = 1;
point = new Point(0, 0);
this.PictureBox2.Location = point;
this.PictureBox2.Name = "PictureBox2";
size = new Size(600, 400);
this.PictureBox2.Size = size;
this.PictureBox2.SizeMode = PictureBoxSizeMode.AutoSize;
this.PictureBox2.TabIndex = 3;
this.PictureBox2.TabStop = false;
point = new Point(0x1d1, 0x2e);
this.StartenAktiviert.Location = point;
this.StartenAktiviert.Name = "StartenAktiviert";
size = new Size(0x7b, 0x24);
this.StartenAktiviert.Size = size;
this.StartenAktiviert.SizeMode = PictureBoxSizeMode.AutoSize;
this.StartenAktiviert.TabIndex = 4;
this.StartenAktiviert.TabStop = false;
point = new Point(0x1d1, 0x66);
this.SpieloptionenAktiviert.Location = point;
this.SpieloptionenAktiviert.Name = "SpieloptionenAktiviert";
size = new Size(0x7b, 0x15);
this.SpieloptionenAktiviert.Size = size;
this.SpieloptionenAktiviert.SizeMode = PictureBoxSizeMode.AutoSize;
this.SpieloptionenAktiviert.TabIndex = 5;
this.SpieloptionenAktiviert.TabStop = false;
point = new Point(0x1d1, 0x166);
this.BeendenAktiviert.Location = point;
this.BeendenAktiviert.Name = "BeendenAktiviert";
size = new Size(0x7b, 0x15);
this.BeendenAktiviert.Size = size;
this.BeendenAktiviert.SizeMode = PictureBoxSizeMode.AutoSize;
this.BeendenAktiviert.TabIndex = 6;
this.BeendenAktiviert.TabStop = false;
point = new Point(0x12f, 240);
this.WebBrowser2.Location = point;
size = new Size(20, 20);
this.WebBrowser2.MinimumSize = size;
this.WebBrowser2.Name = "WebBrowser2";
size = new Size(0x5d, 0x3e);
this.WebBrowser2.Size = size;
this.WebBrowser2.TabIndex = 7;
this.WebBrowser2.Visible = false;
point = new Point(0x1d1, 0x2e);
this.StartenMouseover.Location = point;
this.StartenMouseover.Name = "StartenMouseover";
size = new Size(0x7b, 0x24);
this.StartenMouseover.Size = size;
this.StartenMouseover.SizeMode = PictureBoxSizeMode.AutoSize;
this.StartenMouseover.TabIndex = 8;
this.StartenMouseover.TabStop = false;
this.StartenMouseover.Visible = false;
point = new Point(0x1d1, 0x66);
this.SpieloptionenMouseover.Location = point;
this.SpieloptionenMouseover.Name = "SpieloptionenMouseover";
size = new Size(0x7b, 0x15);
this.SpieloptionenMouseover.Size = size;
this.SpieloptionenMouseover.SizeMode = PictureBoxSizeMode.AutoSize;
this.SpieloptionenMouseover.TabIndex = 9;
this.SpieloptionenMouseover.TabStop = false;
this.SpieloptionenMouseover.Visible = false;
point = new Point(0x1d1, 0x166);
this.BeendenMouseover.Location = point;
this.BeendenMouseover.Name = "BeendenMouseover";
size = new Size(0x7b, 0x15);
this.BeendenMouseover.Size = size;
this.BeendenMouseover.SizeMode = PictureBoxSizeMode.AutoSize;
this.BeendenMouseover.TabIndex = 10;
this.BeendenMouseover.TabStop = false;
this.BeendenMouseover.Visible = false;
point = new Point(0x1d1, 0xa6);
this.AccountverwaltungAktiviert.Location = point;
this.AccountverwaltungAktiviert.Name = "AccountverwaltungAktiviert";
size = new Size(0x7b, 0x15);
this.AccountverwaltungAktiviert.Size = size;
this.AccountverwaltungAktiviert.SizeMode = PictureBoxSizeMode.AutoSize;
this.AccountverwaltungAktiviert.TabIndex = 11;
this.AccountverwaltungAktiviert.TabStop = false;
point = new Point(0x1d1, 0xa6);
this.AccountverwaltungMouseover.Location = point;
this.AccountverwaltungMouseover.Name = "AccountverwaltungMouseover";
size = new Size(0x7b, 0x15);
this.AccountverwaltungMouseover.Size = size;
this.AccountverwaltungMouseover.SizeMode = PictureBoxSizeMode.AutoSize;
this.AccountverwaltungMouseover.TabIndex = 12;
this.AccountverwaltungMouseover.TabStop = false;
this.AccountverwaltungMouseover.Visible = false;
point = new Point(0x1d1, 0xc1);
this.NeuenAccountMouseover.Location = point;
this.NeuenAccountMouseover.Name = "NeuenAccountMouseover";
size = new Size(0x7b, 0x15);
this.NeuenAccountMouseover.Size = size;
this.NeuenAccountMouseover.SizeMode = PictureBoxSizeMode.AutoSize;
this.NeuenAccountMouseover.TabIndex = 14;
this.NeuenAccountMouseover.TabStop = false;
this.NeuenAccountMouseover.Visible = false;
point = new Point(0x1d1, 0xc1);
this.NeuenAccountAktiviert.Location = point;
this.NeuenAccountAktiviert.Name = "NeuenAccountAktiviert";
size = new Size(0x7b, 0x15);
this.NeuenAccountAktiviert.Size = size;
this.NeuenAccountAktiviert.SizeMode = PictureBoxSizeMode.AutoSize;
this.NeuenAccountAktiviert.TabIndex = 13;
this.NeuenAccountAktiviert.TabStop = false;
this.Label2.AutoSize = true;
this.Label2.BackColor = Color.Transparent;
this.Label2.Font = new Font("Microsoft Sans Serif", 11.25f, FontStyle.Regular, GraphicsUnit.Point, 0);
this.Label2.ForeColor = Color.Black;
point = new Point(0x1da, 0x17d);
this.Label2.Location = point;
this.Label2.Name = "Label2";
size = new Size(0x13, 0x12);
this.Label2.Size = size;
this.Label2.TabIndex = 3;
this.Label2.Text = "\x00a9";
this.Label2.TextAlign = ContentAlignment.MiddleCenter;
this.Label3.AutoSize = true;
this.Label3.BackColor = Color.Transparent;
this.Label3.ForeColor = Color.Black;
point = new Point(490, 0x17f);
this.Label3.Location = point;
this.Label3.Name = "Label3";
size = new Size(0x68, 13);
this.Label3.Size = size;
this.Label3.TabIndex = 4;
this.Label3.Text = "musicinstructor 2010";
point = new Point(0x7b, 0x40);
this.RichTextBox1.Location = point;
this.RichTextBox1.Name = "RichTextBox1";
size = new Size(0xec, 0x60);
this.RichTextBox1.Size = size;
this.RichTextBox1.TabIndex = 15;
this.RichTextBox1.Text = "";
this.RichTextBox1.Visible = false;
this.RichTextBox1.WordWrap = false;
point = new Point(0x79, 0xc0);
this.RichTextBox2.Location = point;
this.RichTextBox2.Name = "RichTextBox2";
size = new Size(0xec, 0x60);
this.RichTextBox2.Size = size;
this.RichTextBox2.TabIndex = 0x10;
this.RichTextBox2.Text = "";
this.RichTextBox2.Visible = false;
this.RichTextBox2.WordWrap = false;
this.Label1.AutoSize = true;
this.Label1.BackColor = Color.Transparent;
this.Label1.ForeColor = Color.Black;
point = new Point(9, 0x181);
this.Label1.Location = point;
this.Label1.Name = "Label1";
size = new Size(0xc3, 13);
this.Label1.Size = size;
this.Label1.TabIndex = 6;
this.Label1.Text = "Metin2 Private Server AutoPatcher v1.2";
this.Timer1.Interval = 0xbb8;
point = new Point(0x1d1, 0x2e);
this.StartenInactive.Location = point;
this.StartenInactive.Name = "StartenInactive";
size = new Size(0x7b, 0x24);
this.StartenInactive.Size = size;
this.StartenInactive.SizeMode = PictureBoxSizeMode.AutoSize;
this.StartenInactive.TabIndex = 0x11;
this.StartenInactive.TabStop = false;
point = new Point(0x1d1, 0x66);
this.SpielOptionenInactive.Location = point;
this.SpielOptionenInactive.Name = "SpielOptionenInactive";
size = new Size(0x7b, 0x15);
this.SpielOptionenInactive.Size = size;
this.SpielOptionenInactive.SizeMode = PictureBoxSizeMode.AutoSize;
this.SpielOptionenInactive.TabIndex = 0x12;
this.SpielOptionenInactive.TabStop = false;
point = new Point(0x1d1, 0xc1);
this.NeuenAccountInactive.Location = point;
this.NeuenAccountInactive.Name = "NeuenAccountInactive";
size = new Size(0x7b, 0x15);
this.NeuenAccountInactive.Size = size;
this.NeuenAccountInactive.SizeMode = PictureBoxSizeMode.AutoSize;
this.NeuenAccountInactive.TabIndex = 0x13;
this.NeuenAccountInactive.TabStop = false;
point = new Point(0x1d1, 0x166);
this.BeendenInactive.Location = point;
this.BeendenInactive.Name = "BeendenInactive";
size = new Size(0x7b, 0x15);
this.BeendenInactive.Size = size;
this.BeendenInactive.SizeMode = PictureBoxSizeMode.AutoSize;
this.BeendenInactive.TabIndex = 20;
this.BeendenInactive.TabStop = false;
point = new Point(0x1d1, 0xa6);
this.AccountverwaltungInactive.Location = point;
this.AccountverwaltungInactive.Name = "AccountverwaltungInactive";
size = new Size(0x7b, 0x15);
this.AccountverwaltungInactive.Size = size;
this.AccountverwaltungInactive.SizeMode = PictureBoxSizeMode.AutoSize;
this.AccountverwaltungInactive.TabIndex = 0x15;
this.AccountverwaltungInactive.TabStop = false;
point = new Point(10, 7);
this.ProgressBar1.Location = point;
this.ProgressBar1.Name = "ProgressBar1";
size = new Size(0x240, 0x11);
this.ProgressBar1.Size = size;
this.ProgressBar1.TabIndex = 0;
this.Label4.AutoSize = true;
this.Label4.BackColor = Color.Transparent;
this.Label4.BorderStyle = BorderStyle.Fixed3D;
this.Label4.ForeColor = Color.White;
point = new Point(10, 0x19);
this.Label4.Location = point;
this.Label4.Name = "Label4";
size = new Size(110, 15);
this.Label4.Size = size;
this.Label4.TabIndex = 2;
this.Label4.Text = "Verbindungsaufbau...";
this.Label5.AutoSize = true;
this.Label5.BackColor = Color.Transparent;
this.Label5.BorderStyle = BorderStyle.Fixed3D;
this.Label5.ForeColor = Color.White;
point = new Point(10, 0x45);
this.Label5.Location = point;
this.Label5.Name = "Label5";
size = new Size(110, 15);
this.Label5.Size = size;
this.Label5.TabIndex = 5;
this.Label5.Text = "Verbindungsaufbau...";
point = new Point(0x200, 0x1a);
this.Button1.Location = point;
this.Button1.Name = "Button1";
size = new Size(0x4b, 0x13);
this.Button1.Size = size;
this.Button1.TabIndex = 6;
this.Button1.Text = "Abbrechen";
this.Button1.UseVisualStyleBackColor = true;
point = new Point(10, 0x33);
this.ProgressBar2.Location = point;
this.ProgressBar2.Name = "ProgressBar2";
size = new Size(0x240, 0x11);
this.ProgressBar2.Size = size;
this.ProgressBar2.TabIndex = 7;
point = new Point(0, 0x18f);
this.PictureBox1.Location = point;
this.PictureBox1.Name = "PictureBox1";
size = new Size(600, 0x60);
this.PictureBox1.Size = size;
this.PictureBox1.TabIndex = 2;
this.PictureBox1.TabStop = false;
this.Panel1.Controls.Add(this.ProgressBar2);
this.Panel1.Controls.Add(this.Button1);
this.Panel1.Controls.Add(this.Label5);
this.Panel1.Controls.Add(this.Label4);
this.Panel1.Controls.Add(this.ProgressBar1);
point = new Point(0, 0x18f);
this.Panel1.Location = point;
this.Panel1.Name = "Panel1";
size = new Size(600, 0x60);
this.Panel1.Size = size;
this.Panel1.TabIndex = 0;
point = new Point(0xfe, 0xcc);
this.WebBrowser3.Location = point;
size = new Size(20, 20);
this.WebBrowser3.MinimumSize = size;
this.WebBrowser3.Name = "WebBrowser3";
size = new Size(0x5d, 0x3e);
this.WebBrowser3.Size = size;
this.WebBrowser3.TabIndex = 0x16;
this.WebBrowser3.Visible = false;
SizeF ef = new SizeF(6f, 13f);
this.AutoScaleDimensions = ef;
this.AutoScaleMode = AutoScaleMode.Font;
this.BackgroundImageLayout = ImageLayout.None;
size = new Size(600, 0x1d7);
this.ClientSize = size;
this.Controls.Add(this.WebBrowser3);
this.Controls.Add(this.Label3);
this.Controls.Add(this.Label1);
this.Controls.Add(this.RichTextBox2);
this.Controls.Add(this.Label2);
this.Controls.Add(this.RichTextBox1);
this.Controls.Add(this.NeuenAccountMouseover);
this.Controls.Add(this.NeuenAccountAktiviert);
this.Controls.Add(this.AccountverwaltungMouseover);
this.Controls.Add(this.AccountverwaltungAktiviert);
this.Controls.Add(this.BeendenMouseover);
this.Controls.Add(this.SpieloptionenMouseover);
this.Controls.Add(this.StartenMouseover);
this.Controls.Add(this.WebBrowser2);
this.Controls.Add(this.BeendenAktiviert);
this.Controls.Add(this.SpieloptionenAktiviert);
this.Controls.Add(this.StartenAktiviert);
this.Controls.Add(this.WebBrowser1);
this.Controls.Add(this.Panel1);
this.Controls.Add(this.StartenInactive);
this.Controls.Add(this.SpielOptionenInactive);
this.Controls.Add(this.NeuenAccountInactive);
this.Controls.Add(this.BeendenInactive);
this.Controls.Add(this.AccountverwaltungInactive);
this.Controls.Add(this.PictureBox1);
this.Controls.Add(this.PictureBox2);
this.FormBorderStyle = FormBorderStyle.None;
this.Icon = (Icon) manager.GetObject("$this.Icon");
this.Name = "Form1";
this.StartPosition = FormStartPosition.CenterScreen;
this.Text = "Metin2 AutoPatcher";
((ISupportInitialize) this.PictureBox2).EndInit();
((ISupportInitialize) this.StartenAktiviert).EndInit();
((ISupportInitialize) this.SpieloptionenAktiviert).EndInit();
((ISupportInitialize) this.BeendenAktiviert).EndInit();
((ISupportInitialize) this.StartenMouseover).EndInit();
((ISupportInitialize) this.SpieloptionenMouseover).EndInit();
((ISupportInitialize) this.BeendenMouseover).EndInit();
((ISupportInitialize) this.AccountverwaltungAktiviert).EndInit();
((ISupportInitialize) this.AccountverwaltungMouseover).EndInit();
((ISupportInitialize) this.NeuenAccountMouseover).EndInit();
((ISupportInitialize) this.NeuenAccountAktiviert).EndInit();
((ISupportInitialize) this.StartenInactive).EndInit();
((ISupportInitialize) this.SpielOptionenInactive).EndInit();
((ISupportInitialize) this.NeuenAccountInactive).EndInit();
((ISupportInitialize) this.BeendenInactive).EndInit();
((ISupportInitialize) this.AccountverwaltungInactive).EndInit();
((ISupportInitialize) this.PictureBox1).EndInit();
this.Panel1.ResumeLayout(false);
this.Panel1.PerformLayout();
this.ResumeLayout(false);
this.PerformLayout();
}
private void ManualConfig()
{
bool useClientVersion = true;
this.ReadExclusiveClientVersion(useClientVersion);
this.ServerURL = "http://www.patchserver.de/";
this.NewAcc = "http://www.neuenaccount.de/";
this.AccVerw = "http://www.accountverwaltung.de/";
this.StartAppName = "metin2client.bin";
string str = "BeispielMt2";
this.Text = str;
this.Label1.Text = this.Label1.Text + " exclusive for " + str;
this.Abort_btn = "Abbrechen";
this.ActualClientVer_label = "Clientversion aktuell! Patchvorgang abgeschlossen!";
this.outdatedClientVersion_label = "Clientversion nicht aktuell! Patchvorgang wird gestartet. Verbindungsaufbau...";
this.UpdateComplete_label = "Update vollst\x00e4ndig heruntergeladen!";
this.StartingInstall_label = "Installation wird vorbereitet";
this.Downloading_label = @"Download der Datei \";
this.UpdatingPatcher_label = "Der Patcher wird auf den neusten Stand gebracht...";
this.DownloadComplete_label = "Download abgeschlossen!";
this.PatchComplete_label = "Patchvorgang abgeschlossen!";
this.WaitingforFile_label = @"Warten auf Datei \";
this.DeletingFile_label = "L\x00f6schen der Datei \\";
this.PatcherUpdate_msg = "F\x00fcr den Patcher ist ein Update verf\x00fcgbar. Das Update wird nun installiert.";
this.PatcherUpdate_msg_title = "Update";
this.CheckingFile_label = "\x00dcberpr\x00fcfen der Datei ";
this.ReadPatchlist_label = "Patchlist wird analysiert...";
this.ConfigExeError_msg = "Die Datei 'config.exe' konnte nicht gefunden werden. Starten Sie den Patchvorgang erneut, um das Problem zu beheben oder wenden Sie sich an den Vertreiber des Patchers.";
this.ConfigExeError_msg_title = "Spieloptionen";
this.StartClientError_msg = "'metin2client.bin' konnte nicht gefunden werden. Starten sie den Patchvorgang erneut, um das Problem zu beheben.";
this.StartClientError_msg_title = "Spiel starten";
this.PatchlistError1_msg = "Die PatchList ist in der Zeile ";
this.PatchlistError2_msg = " von ";
this.PatchlistError3_msg = " fehlerhaft. Der Patchvorgang wird \x00fcbersprungen. Der Patcher wird versuchen, den Clienten ungepatcht zu starten. M\x00f6glicherweise k\x00f6nnte dies zu Problemen f\x00fchren. Wenden Sie sich an den Vertreiber des Patchers, wenn das Problem weiterhin besteht.";
this.PatchlistError4_msg = "Inhalt der Zeile: ";
this.PatchlistError5_msg = "Diese Informationen k\x00f6nnte dem Verbreiter des Patchers bei der Probleml\x00f6sung helfen.";
this.PatchlistError1_msg_title = "Serverseitiger Fehler:";
this.PatchlistError2_msg_title = "Weitere Informationen";
this.PatchconfigError_msg = "Fehler beim Laden der patchconfig.cfg";
this.PatchconfigError_msg_title = "Fehler";
this.Connecting_label = "Verbindungsaufbau...";
this.UnloadMetin2Request_msg = "F\x00fcr eine Datei ist ein Patch verf\x00fcgbar, jedoch l\x00e4uft der Metin2-Prozess noch. Der Metin2-Prozess muss zum fortfahren beendet werden. Andernfalls wird der Patchvorgang abgebrochen. Wollen Sie Metin2 beenden?";
this.UnloadMetin2Request_msg_title = "Patch verf\x00fcgbar";
}
public string MD5FileHash(string sFile)
{
MD5CryptoServiceProvider provider = new MD5CryptoServiceProvider();
string str2 = "";
string expression = "";
FileStream inputStream = new FileStream(sFile, FileMode.Open, FileAccess.Read, FileShare.Read, 0x2000);
provider.ComputeHash(inputStream);
inputStream.Close();
byte[] hash = provider.Hash;
int num2 = hash.Length - 1;
for (int i = 0; i <= num2; i++)
{
expression = Conversion.Hex(hash[i]);
if (Strings.Len(expression) == 1)
{
expression = "0" + expression;
}
str2 = str2 + expression;
}
return str2;
}
private void me_close(object sender, FormClosingEventArgs e)
{
e.Cancel = true;
StreamWriter writer = new StreamWriter(this.APfad + "killpatcher.bat", false);
writer.WriteLine("@echo off");
writer.WriteLine("TASKKILL /F /IM \"" + Path.GetFileName(Application.ExecutablePath) + "\"");
writer.WriteLine("del \"" + this.APfad + "killpatcher.bat\" 2>nul");
writer.Close();
Interaction.Shell("\"" + this.APfad + "killpatcher.bat\"", AppWinStyle.Hide, false, -1);
Application.Exit();
e.Cancel = false;
}
private void MyWebClient_DownloadProgressChanged(object sender, DownloadProgressChangedEventArgs e)
{
long num2 = (long) Math.Round((double) (((double) e.TotalBytesToReceive) / 1024.0));
long num = (long) Math.Round((double) (((double) e.BytesReceived) / 1024.0));
if (num2 <= 0L)
{
this.ProgressBar2.Style = ProgressBarStyle.Marquee;
int num3 = (int) Math.Round((double) (((double) this.uFileSize) / 1024.0));
this.Label5.Text = this.Downloading_label + this.globalEndpfad + " " + num.ToString() + " KB " + this.PatchlistError2_msg + "˜" + Conversions.ToString(num3) + " KB";
}
else
{
if (num < 1L)
{
num = 1L;
}
this.ProgressBar2.Style = ProgressBarStyle.Blocks;
this.Label5.Text = this.Downloading_label + this.globalEndpfad + " " + num.ToString() + " KB " + this.PatchlistError2_msg + num2.ToString() + " KB";
}
if (num2 < 1L)
{
num2 = 1L;
}
this.ProgressBar2.Value = e.ProgressPercentage;
}
private void NeuenAccountAktiviert_MouseEnter(object sender, EventArgs e)
{
this.NeuenAccountMouseover.Visible = true;
this.NeuenAccountAktiviert.Visible = false;
}
private void NeuenAccountMouseover_Click(object sender, EventArgs e)
{
Process.Start(this.NewAcc);
}
private void NeuenAccountMouseOver_MouseLeave(object sender, EventArgs e)
{
this.NeuenAccountAktiviert.Visible = true;
this.NeuenAccountMouseover.Visible = false;
}
private void Patch()
{
this.Label5.Text = this.ReadPatchlist_label;
this.RichTextBox1.Text = this.WebBrowser2.DocumentText;
int num = this.TextBox_CountLines(this.RichTextBox1.Handle);
if (num != 0)
{
this.DateiAnzahl = num - 0x12;
this.ProgressBar1.Style = ProgressBarStyle.Blocks;
this.ProgressBar1.Maximum = this.DateiAnzahl;
if (this.PatchedData > this.DateiAnzahl)
{
Application.Restart();
}
this.ProgressBar1.Value = this.PatchedData;
this.LineOfText = "PFAD ##md5Hash= HASH";
while (this.PatchedData != this.DateiAnzahl)
{
if (this.Cancel == 1)
{
return;
}
try
{
string str;
string str3;
this.PatchedData++;
this.ProgressBar1.Value++;
this.SplitPathHash(Conversions.ToString(this.RichTextBox1.Lines.GetValue(this.PatchedData)), ref str, ref str3);
string path = this.APfad + str;
this.Label4.Text = this.CheckingFile_label + this.APfad + str;
if (System.IO.File.Exists(path))
{
if (this.Cancel != 1)
{
if (this.MD5FileHash(this.APfad + str) == str3)
{
goto Label_03D9;
}
if (this.DoesProcessExists(this.StartAppName) & (str != "mark/20.tga"))
{
if (Interaction.MsgBox(this.UnloadMetin2Request_msg, MsgBoxStyle.YesNo, this.UnloadMetin2Request_msg_title) == MsgBoxResult.Yes)
{
foreach (Process process in Process.GetProcessesByName(this.StartAppName))
{
process.Kill();
}
}
else
{
this.Button1.PerformClick();
if (this.Cancel == 1)
{
return;
}
}
}
if (Path.GetFileName(path) == Path.GetFileName(Application.ExecutablePath))
{
Interaction.MsgBox(this.PatcherUpdate_msg, MsgBoxStyle.Information, this.PatcherUpdate_msg_title);
this.PatcherUpdate(str);
}
else
{
this.uFileSize = (int) MyProject.Computer.FileSystem.GetFileInfo(this.APfad + str).Length;
System.IO.File.Delete(this.APfad + str);
do
{
this.Label4.Text = this.DeletingFile_label + str;
this.Refresh();
Application.DoEvents();
}
while (System.IO.File.Exists(path));
if (this.Cancel != 1)
{
this.globalEndpfad = str;
this.Label4.Text = this.WaitingforFile_label + str;
this.Refresh();
this.Label5.Text = this.Downloading_label + str;
this.Height = 490;
this.Button1.Left = 0x201;
this.Button1.Top = 0x45;
this.MyWebClient.DownloadFileAsync(new Uri(this.ServerURL + "client/" + str), this.APfad + str);
}
}
}
}
else if (this.Cancel != 1)
{
string directoryName = Path.GetDirectoryName(this.APfad + str);
if (!Directory.Exists(directoryName))
{
Directory.CreateDirectory(directoryName);
}
this.globalEndpfad = str;
this.Label5.Text = this.Downloading_label + str;
this.Label4.Text = this.WaitingforFile_label + str;
this.Height = 490;
this.Button1.Left = 0x201;
this.Button1.Top = 0x45;
this.MyWebClient.DownloadFileAsync(new Uri(this.ServerURL + "client/" + str), this.APfad + str);
}
return;
Label_03D9:
this.Refresh();
}
catch (Exception exception1)
{
ProjectData.SetProjectError(exception1);
if (this.PatchedData != this.DateiAnzahl)
{
if (this.Cancel == 1)
{
ProjectData.ClearProjectError();
}
else
{
this.Cancel = 1;
this.PatchlistError();
ProjectData.ClearProjectError();
}
return;
}
ProjectData.ClearProjectError();
}
MyProject.Application.DoEvents();
if (this.Cancel == 1)
{
return;
}
}
this.StartenAktiviert.Visible = true;
this.Label4.Text = this.PatchComplete_label;
this.ProgressBar1.Value = this.ProgressBar1.Maximum;
this.Button1.Enabled = false;
this.Timer1.Enabled = true;
}
}
private void Patch(object sender, WebBrowserDocumentCompletedEventArgs e)
{
}
private void PatcherUpdate(string endPfad)
{
if (!Directory.Exists(this.APfad + "PatcherUpdate"))
{
Directory.CreateDirectory(this.APfad + "PatcherUpdate");
this.UpdateDirectoryCreated = 1;
}
this.globalEndpfad = endPfad;
this.Label4.Text = this.UpdatingPatcher_label;
this.Refresh();
this.Label5.Text = this.Downloading_label + endPfad;
this.Height = 490;
this.Button1.Left = 0x201;
this.Button1.Top = 0x45;
this.UpdateWebClient.DownloadFileAsync(new Uri(this.ServerURL + "client/" + endPfad), this.APfad + "PatcherUpdate/" + endPfad);
}
private void PatchlistError()
{
Interaction.MsgBox(this.PatchlistError1_msg + Conversions.ToString(this.PatchedData) + this.PatchlistError2_msg + Conversions.ToString(this.DateiAnzahl) + this.PatchlistError3_msg, MsgBoxStyle.Exclamation, this.PatchlistError1_msg_title);
Interaction.MsgBox(Operators.ConcatenateObject(Operators.ConcatenateObject(Operators.ConcatenateObject(this.PatchlistError4_msg + "\r\n", this.RichTextBox1.Lines.GetValue(this.PatchedData)), "\r\n"), this.PatchlistError5_msg), MsgBoxStyle.Information, this.PatchlistError2_msg_title);
this.StartenAktiviert.Visible = true;
this.Height = 400;
this.Panel1.Visible = false;
this.SaveSize();
}
private void ReadExclusiveClientVersion(bool UseClientVersion)
{
if (UseClientVersion)
{
if (System.IO.File.Exists(this.APfad + "clientversion.txt"))
{
StreamReader reader = new StreamReader(this.APfad + "clientversion.txt", false);
this.Version = reader.ReadToEnd();
reader.Close();
}
else
{
this.Version = "x";
}
}
else
{
this.Version = "x";
}
}
private void SaveSize()
{
int num = 0;
do
{
num++;
this.Height = 400;
Application.DoEvents();
}
while (num != 0x989680);
}
private void SpieloptionenAktiviert_MouseEnter(object sender, EventArgs e)
{
this.SpieloptionenMouseover.Visible = true;
this.SpieloptionenAktiviert.Visible = false;
}
private void SpieloptionenMouseover_Click(object sender, EventArgs e)
{
try
{
Process.Start(this.APfad + "config.exe");
}
catch (Exception exception1)
{
ProjectData.SetProjectError(exception1);
Interaction.MsgBox(this.ConfigExeError_msg, MsgBoxStyle.Critical, this.ConfigExeError_msg_title);
ProjectData.ClearProjectError();
}
}
private void SpieloptionenMouseOver_MouseLeave(object sender, EventArgs e)
{
this.SpieloptionenAktiviert.Visible = true;
this.SpieloptionenMouseover.Visible = false;
}
public object SplitPathHash(string Line, ref string Path, ref string Hash)
{
object obj2;
Hash = Line.Substring(Line.Length - 0x20, 0x20);
Path = Line.Substring(0, Line.Length - 0x2c);
return obj2;
}
private void StartenAktiviert_MouseEnter(object sender, EventArgs e)
{
this.StartenMouseover.Visible = true;
this.StartenAktiviert.Visible = false;
}
private void StartenMouseover_Click(object sender, EventArgs e)
{
if (System.IO.File.Exists(this.APfad + this.StartAppName))
{
StreamWriter writer = new StreamWriter(this.APfad + "startmetin2.bat", false);
writer.WriteLine("@echo off");
writer.WriteLine("start \"\" \"" + this.APfad + this.StartAppName + "\"");
writer.WriteLine("del \"" + this.APfad + "startmetin2.bat\" 2>nul");
writer.Close();
Interaction.Shell("\"" + this.APfad + "startmetin2.bat\"", AppWinStyle.Hide, false, -1);
Application.Exit();
}
else
{
this.StartClientError_msg = Conversions.ToString(this.SuchenUndErsetzen(this.StartClientError_msg, "metin2client.bin", this.StartAppName));
Interaction.MsgBox(this.StartClientError_msg, MsgBoxStyle.Critical, this.StartClientError_msg_title);
}
}
private void StartenMouseOver_MouseLeave(object sender, EventArgs e)
{
this.StartenAktiviert.Visible = true;
this.StartenMouseover.Visible = false;
}
public object SuchenUndErsetzen(string ZuDurchsuchenderText, string SuchenNach, string ErsetzenDurch)
{
return Strings.Replace(ZuDurchsuchenderText, SuchenNach, ErsetzenDurch, 1, -1, CompareMethod.Binary);
}
private int TextBox_CountLines(IntPtr hwnd)
{
int num = Module1.SendMessage(hwnd, 0xba, 0, 0);
if (num == 0)
{
throw new Exception();
}
return num;
}
private void Timer1_Tick(object sender, EventArgs e)
{
this.Height = 400;
this.Panel1.Visible = false;
this.Timer1.Enabled = false;
this.SaveSize();
}
private void UpdateDownloader_DownloadFileCompleted(object sender, AsyncCompletedEventArgs e)
{
this.Label5.Text = this.UpdateComplete_label;
this.Label5.Text = this.StartingInstall_label;
this.ProgressBar2.Value = this.ProgressBar2.Maximum;
this.Height = 450;
this.Button1.Left = 0x200;
this.Button1.Top = 0x1a;
StreamWriter writer = new StreamWriter(this.APfad + "patcherupdate.bat", false);
writer.WriteLine("@echo off");
writer.WriteLine(":L1");
writer.WriteLine("del \"" + Application.ExecutablePath + "\" 2>nul");
writer.WriteLine("if exist \"" + Application.ExecutablePath + "\" goto L1");
writer.WriteLine("Move /Y \"" + this.APfad + @"PatcherUpdate\" + Path.GetFileName(Application.ExecutablePath) + "\" \"" + Application.StartupPath + "\"");
if (this.UpdateDirectoryCreated == 1)
{
writer.WriteLine("rmdir /s /q \"" + this.APfad + "PatcherUpdate\"");
}
writer.WriteLine("start \"\" \"" + Application.ExecutablePath + "\"");
writer.WriteLine("del \"" + this.APfad + "patcherupdate.bat\" 2>nul");
writer.Close();
Interaction.Shell("\"" + this.APfad + "patcherupdate.bat\"", AppWinStyle.Hide, false, -1);
Application.Exit();
}
private void UpdateWebClient_DownloadProgressChanged(object sender, DownloadProgressChangedEventArgs e)
{
long num2 = (long) Math.Round((double) (((double) e.TotalBytesToReceive) / 1024.0));
long num = (long) Math.Round((double) (((double) e.BytesReceived) / 1024.0));
if (num2 <= 0L)
{
this.ProgressBar2.Style = ProgressBarStyle.Marquee;
int num3 = (int) Math.Round((double) (((double) this.uFileSize) / 1024.0));
this.Label5.Text = this.Downloading_label + this.globalEndpfad + " " + num.ToString() + " KB " + this.PatchlistError2_msg + "˜" + Conversions.ToString(num3) + " KB";
}
else
{
if (num < 1L)
{
num = 1L;
}
this.ProgressBar2.Style = ProgressBarStyle.Blocks;
this.Label5.Text = this.Downloading_label + this.globalEndpfad + " " + num.ToString() + " KB " + this.PatchlistError2_msg + num2.ToString() + " KB";
}
if (num2 < 1L)
{
num2 = 1L;
}
this.ProgressBar2.Value = e.ProgressPercentage;
}
private void WebBrowser3_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e)
{
if (this.WebBrowser3.DocumentText == this.Version)
{
this.StartenAktiviert.Visible = true;
this.Label4.Text = this.ActualClientVer_label;
this.ProgressBar1.Value = this.ProgressBar1.Maximum;
this.Button1.Enabled = false;
this.Timer1.Enabled = true;
}
else
{
this.Label4.Text = this.outdatedClientVersion_label;
this.WebBrowser2.Navigate(this.ServerURL + "patchlist.php");
}
}
internal virtual PictureBox AccountverwaltungAktiviert
{
[DebuggerNonUserCode]
get
{
return this._AccountverwaltungAktiviert;
}
[MethodImpl(MethodImplOptions.Synchronized), DebuggerNonUserCode]
set
{
EventHandler handler = new EventHandler(this.AccountVerwaltungAktiviert_MouseEnter);
if (this._AccountverwaltungAktiviert != null)
{
this._AccountverwaltungAktiviert.MouseEnter -= handler;
}
this._AccountverwaltungAktiviert = value;
if (this._AccountverwaltungAktiviert != null)
{
this._AccountverwaltungAktiviert.MouseEnter += handler;
}
}
}
internal virtual PictureBox AccountverwaltungInactive
{
[DebuggerNonUserCode]
get
{
return this._AccountverwaltungInactive;
}
[MethodImpl(MethodImplOptions.Synchronized), DebuggerNonUserCode]
set
{
this._AccountverwaltungInactive = value;
}
}
internal virtual PictureBox AccountverwaltungMouseover
{
[DebuggerNonUserCode]
get
{
return this._AccountverwaltungMouseover;
}
[MethodImpl(MethodImplOptions.Synchronized), DebuggerNonUserCode]
set
{
EventHandler handler = new EventHandler(this.AccountverwaltungMouseover_Click);
EventHandler handler2 = new EventHandler(this.AccountVerwaltungMouseOver_MouseLeave);
if (this._AccountverwaltungMouseover != null)
{
this._AccountverwaltungMouseover.Click -= handler;
this._AccountverwaltungMouseover.MouseLeave -= handler2;
}
this._AccountverwaltungMouseover = value;
if (this._AccountverwaltungMouseover != null)
{
this._AccountverwaltungMouseover.Click += handler;
this._AccountverwaltungMouseover.MouseLeave += handler2;
}
}
}
internal virtual PictureBox BeendenAktiviert
{
[DebuggerNonUserCode]
get
{
return this._BeendenAktiviert;
}
[MethodImpl(MethodImplOptions.Synchronized), DebuggerNonUserCode]
set
{
EventHandler handler = new EventHandler(this.BeendenAktiviert_MouseEnter);
if (this._BeendenAktiviert != null)
{
this._BeendenAktiviert.MouseEnter -= handler;
}
this._BeendenAktiviert = value;
if (this._BeendenAktiviert != null)
{
this._BeendenAktiviert.MouseEnter += handler;
}
}
}
internal virtual PictureBox BeendenInactive
{
[DebuggerNonUserCode]
get
{
return this._BeendenInactive;
}
[MethodImpl(MethodImplOptions.Synchronized), DebuggerNonUserCode]
set
{
this._BeendenInactive = value;
}
}
internal virtual PictureBox BeendenMouseover
{
[DebuggerNonUserCode]
get
{
return this._BeendenMouseover;
}
[MethodImpl(MethodImplOptions.Synchronized), DebuggerNonUserCode]
set
{
EventHandler handler = new EventHandler(this.BeendenMouseOver_Click);
EventHandler handler2 = new EventHandler(this.BeendenMouseOver_MouseLeave);
if (this._BeendenMouseover != null)
{
this._BeendenMouseover.Click -= handler;
this._BeendenMouseover.MouseLeave -= handler2;
}
this._BeendenMouseover = value;
if (this._BeendenMouseover != null)
{
this._BeendenMouseover.Click += handler;
this._BeendenMouseover.MouseLeave += handler2;
}
}
}
internal virtual Button Button1
{
[DebuggerNonUserCode]
get
{
return this._Button1;
}
[MethodImpl(MethodImplOptions.Synchronized), DebuggerNonUserCode]
set
{
EventHandler handler = new EventHandler(this.Button1_Click);
if (this._Button1 != null)
{
this._Button1.Click -= handler;
}
this._Button1 = value;
if (this._Button1 != null)
{
this._Button1.Click += handler;
}
}
}
internal virtual Label Label1
{
[DebuggerNonUserCode]
get
{
return this._Label1;
}
[MethodImpl(MethodImplOptions.Synchronized), DebuggerNonUserCode]
set
{
this._Label1 = value;
}
}
internal virtual Label Label2
{
[DebuggerNonUserCode]
get
{
return this._Label2;
}
[MethodImpl(MethodImplOptions.Synchronized), DebuggerNonUserCode]
set
{
this._Label2 = value;
}
}
internal virtual Label Label3
{
[DebuggerNonUserCode]
get
{
return this._Label3;
}
[MethodImpl(MethodImplOptions.Synchronized), DebuggerNonUserCode]
set
{
this._Label3 = value;
}
}
internal virtual Label Label4
{
[DebuggerNonUserCode]
get
{
return this._Label4;
}
[MethodImpl(MethodImplOptions.Synchronized), DebuggerNonUserCode]
set
{
this._Label4 = value;
}
}
internal virtual Label Label5
{
[DebuggerNonUserCode]
get
{
return this._Label5;
}
[MethodImpl(MethodImplOptions.Synchronized), DebuggerNonUserCode]
set
{
this._Label5 = value;
}
}
internal virtual WebClient MyWebClient
{
[DebuggerNonUserCode]
get
{
return this._MyWebClient;
}
[MethodImpl(MethodImplOptions.Synchronized), DebuggerNonUserCode]
set
{
AsyncCompletedEventHandler handler = new AsyncCompletedEventHandler(this.fileDownloader_DownloadFileCompleted);
DownloadProgressChangedEventHandler handler2 = new DownloadProgressChangedEventHandler(this.MyWebClient_DownloadProgressChanged);
if (this._MyWebClient != null)
{
this._MyWebClient.DownloadFileCompleted -= handler;
this._MyWebClient.DownloadProgressChanged -= handler2;
}
this._MyWebClient = value;
if (this._MyWebClient != null)
{
this._MyWebClient.DownloadFileCompleted += handler;
this._MyWebClient.DownloadProgressChanged += handler2;
}
}
}
internal virtual PictureBox NeuenAccountAktiviert
{
[DebuggerNonUserCode]
get
{
return this._NeuenAccountAktiviert;
}
[MethodImpl(MethodImplOptions.Synchronized), DebuggerNonUserCode]
set
{
EventHandler handler = new EventHandler(this.NeuenAccountAktiviert_MouseEnter);
if (this._NeuenAccountAktiviert != null)
{
this._NeuenAccountAktiviert.MouseEnter -= handler;
}
this._NeuenAccountAktiviert = value;
if (this._NeuenAccountAktiviert != null)
{
this._NeuenAccountAktiviert.MouseEnter += handler;
}
}
}
internal virtual PictureBox NeuenAccountInactive
{
[DebuggerNonUserCode]
get
{
return this._NeuenAccountInactive;
}
[MethodImpl(MethodImplOptions.Synchronized), DebuggerNonUserCode]
set
{
this._NeuenAccountInactive = value;
}
}
internal virtual PictureBox NeuenAccountMouseover
{
[DebuggerNonUserCode]
get
{
return this._NeuenAccountMouseover;
}
[MethodImpl(MethodImplOptions.Synchronized), DebuggerNonUserCode]
set
{
EventHandler handler = new EventHandler(this.NeuenAccountMouseover_Click);
EventHandler handler2 = new EventHandler(this.NeuenAccountMouseOver_MouseLeave);
if (this._NeuenAccountMouseover != null)
{
this._NeuenAccountMouseover.Click -= handler;
this._NeuenAccountMouseover.MouseLeave -= handler2;
}
this._NeuenAccountMouseover = value;
if (this._NeuenAccountMouseover != null)
{
this._NeuenAccountMouseover.Click += handler;
this._NeuenAccountMouseover.MouseLeave += handler2;
}
}
}
internal virtual Panel Panel1
{
[DebuggerNonUserCode]
get
{
return this._Panel1;
}
[MethodImpl(MethodImplOptions.Synchronized), DebuggerNonUserCode]
set
{
this._Panel1 = value;
}
}
internal virtual PictureBox PictureBox1
{
[DebuggerNonUserCode]
get
{
return this._PictureBox1;
}
[MethodImpl(MethodImplOptions.Synchronized), DebuggerNonUserCode]
set
{
this._PictureBox1 = value;
}
}
internal virtual PictureBox PictureBox2
{
[DebuggerNonUserCode]
get
{
return this._PictureBox2;
}
[MethodImpl(MethodImplOptions.Synchronized), DebuggerNonUserCode]
set
{
this._PictureBox2 = value;
}
}
internal virtual ProgressBar ProgressBar1
{
[DebuggerNonUserCode]
get
{
return this._ProgressBar1;
}
[MethodImpl(MethodImplOptions.Synchronized), DebuggerNonUserCode]
set
{
this._ProgressBar1 = value;
}
}
internal virtual ProgressBar ProgressBar2
{
[DebuggerNonUserCode]
get
{
return this._ProgressBar2;
}
[MethodImpl(MethodImplOptions.Synchronized), DebuggerNonUserCode]
set
{
this._ProgressBar2 = value;
}
}
internal virtual RichTextBox RichTextBox1
{
[DebuggerNonUserCode]
get
{
return this._RichTextBox1;
}
[MethodImpl(MethodImplOptions.Synchronized), DebuggerNonUserCode]
set
{
this._RichTextBox1 = value;
}
}
internal virtual RichTextBox RichTextBox2
{
[DebuggerNonUserCode]
get
{
return this._RichTextBox2;
}
[MethodImpl(MethodImplOptions.Synchronized), DebuggerNonUserCode]
set
{
this._RichTextBox2 = value;
}
}
internal virtual PictureBox SpieloptionenAktiviert
{
[DebuggerNonUserCode]
get
{
return this._SpieloptionenAktiviert;
}
[MethodImpl(MethodImplOptions.Synchronized), DebuggerNonUserCode]
set
{
EventHandler handler = new EventHandler(this.SpieloptionenAktiviert_MouseEnter);
if (this._SpieloptionenAktiviert != null)
{
this._SpieloptionenAktiviert.MouseEnter -= handler;
}
this._SpieloptionenAktiviert = value;
if (this._SpieloptionenAktiviert != null)
{
this._SpieloptionenAktiviert.MouseEnter += handler;
}
}
}
internal virtual PictureBox SpielOptionenInactive
{
[DebuggerNonUserCode]
get
{
return this._SpielOptionenInactive;
}
[MethodImpl(MethodImplOptions.Synchronized), DebuggerNonUserCode]
set
{
this._SpielOptionenInactive = value;
}
}
internal virtual PictureBox SpieloptionenMouseover
{
[DebuggerNonUserCode]
get
{
return this._SpieloptionenMouseover;
}
[MethodImpl(MethodImplOptions.Synchronized), DebuggerNonUserCode]
set
{
EventHandler handler = new EventHandler(this.SpieloptionenMouseover_Click);
EventHandler handler2 = new EventHandler(this.SpieloptionenMouseOver_MouseLeave);
if (this._SpieloptionenMouseover != null)
{
this._SpieloptionenMouseover.Click -= handler;
this._SpieloptionenMouseover.MouseLeave -= handler2;
}
this._SpieloptionenMouseover = value;
if (this._SpieloptionenMouseover != null)
{
this._SpieloptionenMouseover.Click += handler;
this._SpieloptionenMouseover.MouseLeave += handler2;
}
}
}
internal virtual PictureBox StartenAktiviert
{
[DebuggerNonUserCode]
get
{
return this._StartenAktiviert;
}
[MethodImpl(MethodImplOptions.Synchronized), DebuggerNonUserCode]
set
{
EventHandler handler = new EventHandler(this.StartenAktiviert_MouseEnter);
if (this._StartenAktiviert != null)
{
this._StartenAktiviert.MouseEnter -= handler;
}
this._StartenAktiviert = value;
if (this._StartenAktiviert != null)
{
this._StartenAktiviert.MouseEnter += handler;
}
}
}
internal virtual PictureBox StartenInactive
{
[DebuggerNonUserCode]
get
{
return this._StartenInactive;
}
[MethodImpl(MethodImplOptions.Synchronized), DebuggerNonUserCode]
set
{
this._StartenInactive = value;
}
}
internal virtual PictureBox StartenMouseover
{
[DebuggerNonUserCode]
get
{
return this._StartenMouseover;
}
[MethodImpl(MethodImplOptions.Synchronized), DebuggerNonUserCode]
set
{
EventHandler handler = new EventHandler(this.StartenMouseover_Click);
EventHandler handler2 = new EventHandler(this.StartenMouseOver_MouseLeave);
if (this._StartenMouseover != null)
{
this._StartenMouseover.Click -= handler;
this._StartenMouseover.MouseLeave -= handler2;
}
this._StartenMouseover = value;
if (this._StartenMouseover != null)
{
this._StartenMouseover.Click += handler;
this._StartenMouseover.MouseLeave += handler2;
}
}
}
internal virtual System.Windows.Forms.Timer Timer1
{
[DebuggerNonUserCode]
get
{
return this._Timer1;
}
[MethodImpl(MethodImplOptions.Synchronized), DebuggerNonUserCode]
set
{
EventHandler handler = new EventHandler(this.Timer1_Tick);
if (this._Timer1 != null)
{
this._Timer1.Tick -= handler;
}
this._Timer1 = value;
if (this._Timer1 != null)
{
this._Timer1.Tick += handler;
}
}
}
internal virtual WebClient UpdateWebClient
{
[DebuggerNonUserCode]
get
{
return this._UpdateWebClient;
}
[MethodImpl(MethodImplOptions.Synchronized), DebuggerNonUserCode]
set
{
AsyncCompletedEventHandler handler = new AsyncCompletedEventHandler(this.UpdateDownloader_DownloadFileCompleted);
DownloadProgressChangedEventHandler handler2 = new DownloadProgressChangedEventHandler(this.UpdateWebClient_DownloadProgressChanged);
if (this._UpdateWebClient != null)
{
this._UpdateWebClient.DownloadFileCompleted -= handler;
this._UpdateWebClient.DownloadProgressChanged -= handler2;
}
this._UpdateWebClient = value;
if (this._UpdateWebClient != null)
{
this._UpdateWebClient.DownloadFileCompleted += handler;
this._UpdateWebClient.DownloadProgressChanged += handler2;
}
}
}
internal virtual WebBrowser WebBrowser1
{
[DebuggerNonUserCode]
get
{
return this._WebBrowser1;
}
[MethodImpl(MethodImplOptions.Synchronized), DebuggerNonUserCode]
set
{
this._WebBrowser1 = value;
}
}
internal virtual WebBrowser WebBrowser2
{
[DebuggerNonUserCode]
get
{
return this._WebBrowser2;
}
[MethodImpl(MethodImplOptions.Synchronized), DebuggerNonUserCode]
set
{
WebBrowserDocumentCompletedEventHandler handler = new WebBrowserDocumentCompletedEventHandler(this.Patch);
WebBrowserDocumentCompletedEventHandler handler2 = new WebBrowserDocumentCompletedEventHandler(this._Lambda$__1);
if (this._WebBrowser2 != null)
{
this._WebBrowser2.DocumentCompleted -= handler;
this._WebBrowser2.DocumentCompleted -= handler2;
}
this._WebBrowser2 = value;
if (this._WebBrowser2 != null)
{
this._WebBrowser2.DocumentCompleted += handler;
this._WebBrowser2.DocumentCompleted += handler2;
}
}
}
internal virtual WebBrowser WebBrowser3
{
[DebuggerNonUserCode]
get
{
return this._WebBrowser3;
}
[MethodImpl(MethodImplOptions.Synchronized), DebuggerNonUserCode]
set
{
WebBrowserDocumentCompletedEventHandler handler = new WebBrowserDocumentCompletedEventHandler(this.WebBrowser3_DocumentCompleted);
if (this._WebBrowser3 != null)
{
this._WebBrowser3.DocumentCompleted -= handler;
}
this._WebBrowser3 = value;
if (this._WebBrowser3 != null)
{
this._WebBrowser3.DocumentCompleted += handler;
}
}
}
}
}