diff --git a/DNS Changer/App.config b/DNS Changer/App.config new file mode 100644 index 0000000..9b819fa --- /dev/null +++ b/DNS Changer/App.config @@ -0,0 +1,21 @@ + + + + +
+ + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/DNS Changer/CustomPanel.Designer.cs b/DNS Changer/CustomPanel.Designer.cs new file mode 100644 index 0000000..d87ddc2 --- /dev/null +++ b/DNS Changer/CustomPanel.Designer.cs @@ -0,0 +1,36 @@ +namespace DNS_Changer +{ + partial class CustomPanel + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Component Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + components = new System.ComponentModel.Container(); + } + + #endregion + } +} diff --git a/DNS Changer/CustomPanel.cs b/DNS Changer/CustomPanel.cs new file mode 100644 index 0000000..a83cd4f --- /dev/null +++ b/DNS Changer/CustomPanel.cs @@ -0,0 +1,149 @@ +using System.Drawing.Drawing2D; +using System.Drawing; +using System.Windows.Forms; + +namespace DNS_Changer +{ + public partial class CustomPanel : Panel + { + private Panel panel; + + private Color borderColor = Color.MediumSlateBlue; + private Color borderFocusColor = Color.HotPink; + private int borderSize = 2; + private bool underlinedStyle = false; + private bool isFocused = false; + + private int borderRadius = 0; + + + public Color BorderColor + { + get { return borderColor; } + set + { + borderColor = value; + this.Invalidate(); + } + } + + public Color BorderFocusColor + { + get { return borderFocusColor; } + set { borderFocusColor = value; } + } + + public int BorderSize + { + get { return borderSize; } + set + { + if (value >= 1) + { + borderSize = value; + this.Invalidate(); + } + } + } + + public bool UnderlinedStyle + { + get { return underlinedStyle; } + set + { + underlinedStyle = value; + this.Invalidate(); + } + } + + public override Color ForeColor + { + get { return base.ForeColor; } + set + { + base.ForeColor = value; + panel.ForeColor = value; + } + } + + + public int BorderRadius + { + get { return borderRadius; } + set + { + if (value >= 0) + { + borderRadius = value; + this.Invalidate();//Redraw control + } + } + } + + protected override void OnPaint(PaintEventArgs e) + { + base.OnPaint(e); + Graphics graph = e.Graphics; + + if (borderRadius > 1)//Rounded TextBox + { + //-Fields + var rectBorderSmooth = this.ClientRectangle; + var rectBorder = Rectangle.Inflate(rectBorderSmooth, -borderSize, -borderSize); + int smoothSize = borderSize > 0 ? borderSize : 1; + + using (GraphicsPath pathBorderSmooth = GetFigurePath(rectBorderSmooth, borderRadius)) + using (GraphicsPath pathBorder = GetFigurePath(rectBorder, borderRadius - borderSize)) + using (Pen penBorderSmooth = new Pen(this.Parent.BackColor, smoothSize)) + using (Pen penBorder = new Pen(borderColor, borderSize)) + { + //-Drawing + this.Region = new Region(pathBorderSmooth);//Set the rounded region of UserControl + if (borderRadius > 15) SetTextBoxRoundedRegion();//Set the rounded region of TextBox component + graph.SmoothingMode = SmoothingMode.AntiAlias; + penBorder.Alignment = System.Drawing.Drawing2D.PenAlignment.Center; + if (isFocused) penBorder.Color = borderFocusColor; + + if (underlinedStyle) //Line Style + { + //Draw border smoothing + graph.DrawPath(penBorderSmooth, pathBorderSmooth); + //Draw border + graph.SmoothingMode = SmoothingMode.None; + graph.DrawLine(penBorder, 0, this.Height - 1, this.Width, this.Height - 1); + } + else //Normal Style + { + //Draw border smoothing + graph.DrawPath(penBorderSmooth, pathBorderSmooth); + //Draw border + graph.DrawPath(penBorder, pathBorder); + } + } + } + } + private void SetTextBoxRoundedRegion() + { + GraphicsPath pathTxt; + + + pathTxt = GetFigurePath(panel.ClientRectangle, borderSize * 2); + panel.Region = new Region(pathTxt); + + pathTxt.Dispose(); + } + private GraphicsPath GetFigurePath(Rectangle rect, int radius) + { + GraphicsPath path = new GraphicsPath(); + float curveSize = radius * 2F; + + path.StartFigure(); + path.AddArc(rect.X, rect.Y, curveSize, curveSize, 180, 90); + path.AddArc(rect.Right - curveSize, rect.Y, curveSize, curveSize, 270, 90); + path.AddArc(rect.Right - curveSize, rect.Bottom - curveSize, curveSize, curveSize, 0, 90); + path.AddArc(rect.X, rect.Bottom - curveSize, curveSize, curveSize, 90, 90); + path.CloseFigure(); + return path; + } + } +} diff --git a/DNS Changer/CustomTextBox.cs b/DNS Changer/CustomTextBox.cs new file mode 100644 index 0000000..c1c4916 --- /dev/null +++ b/DNS Changer/CustomTextBox.cs @@ -0,0 +1,367 @@ +using System; +using System.ComponentModel; +using System.Drawing; +using System.Windows.Forms; +using System.Drawing.Drawing2D; + +namespace CustomControls.RJControls +{ + [DefaultEvent("_TextChanged")] + public partial class CustomTextBox : UserControl + { + #region -> Fields + //Fields + private Color borderColor = Color.MediumSlateBlue; + private Color borderFocusColor = Color.HotPink; + private int borderSize = 2; + private bool underlinedStyle = false; + private bool isFocused = false; + + private int borderRadius = 0; + private Color placeholderColor = Color.DarkGray; + private string placeholderText = ""; + private bool isPlaceholder = false; + private bool isPasswordChar = false; + + //Events + public event EventHandler _TextChanged; + + #endregion + + //-> Constructor + public CustomTextBox() + { + //Created by designer + InitializeComponent(); + } + + #region -> Properties + [Category("RJ Code Advance")] + public Color BorderColor + { + get { return borderColor; } + set + { + borderColor = value; + this.Invalidate(); + } + } + + [Category("RJ Code Advance")] + public Color BorderFocusColor + { + get { return borderFocusColor; } + set { borderFocusColor = value; } + } + + [Category("RJ Code Advance")] + public int BorderSize + { + get { return borderSize; } + set + { + if (value >= 1) + { + borderSize = value; + this.Invalidate(); + } + } + } + + [Category("RJ Code Advance")] + public bool UnderlinedStyle + { + get { return underlinedStyle; } + set + { + underlinedStyle = value; + this.Invalidate(); + } + } + + [Category("RJ Code Advance")] + public bool PasswordChar + { + get { return isPasswordChar; } + set + { + isPasswordChar = value; + if (!isPlaceholder) + textBox1.UseSystemPasswordChar = value; + } + } + + [Category("RJ Code Advance")] + public bool Multiline + { + get { return textBox1.Multiline; } + set { textBox1.Multiline = value; } + } + + [Category("RJ Code Advance")] + public override Color BackColor + { + get { return base.BackColor; } + set + { + base.BackColor = value; + textBox1.BackColor = value; + } + } + + [Category("RJ Code Advance")] + public override Color ForeColor + { + get { return base.ForeColor; } + set + { + base.ForeColor = value; + textBox1.ForeColor = value; + } + } + + [Category("RJ Code Advance")] + public override Font Font + { + get { return base.Font; } + set + { + base.Font = value; + textBox1.Font = value; + if (this.DesignMode) + UpdateControlHeight(); + } + } + + [Category("RJ Code Advance")] + public string Texts + { + get + { + if (isPlaceholder) return ""; + else return textBox1.Text; + } + set + { + textBox1.Text = value; + SetPlaceholder(); + } + } + + [Category("RJ Code Advance")] + public int BorderRadius + { + get { return borderRadius; } + set + { + if (value >= 0) + { + borderRadius = value; + this.Invalidate();//Redraw control + } + } + } + + [Category("RJ Code Advance")] + public Color PlaceholderColor + { + get { return placeholderColor; } + set + { + placeholderColor = value; + if (isPlaceholder) + textBox1.ForeColor = value; + } + } + + [Category("RJ Code Advance")] + public string PlaceholderText + { + get { return placeholderText; } + set + { + placeholderText = value; + textBox1.Text = ""; + SetPlaceholder(); + } + } + + + + #endregion + + #region -> Overridden methods + protected override void OnResize(EventArgs e) + { + base.OnResize(e); + if (this.DesignMode) + UpdateControlHeight(); + } + protected override void OnLoad(EventArgs e) + { + base.OnLoad(e); + UpdateControlHeight(); + } + protected override void OnPaint(PaintEventArgs e) + { + base.OnPaint(e); + Graphics graph = e.Graphics; + + if (borderRadius > 1)//Rounded TextBox + { + //-Fields + var rectBorderSmooth = this.ClientRectangle; + var rectBorder = Rectangle.Inflate(rectBorderSmooth, -borderSize, -borderSize); + int smoothSize = borderSize > 0 ? borderSize : 1; + + using (GraphicsPath pathBorderSmooth = GetFigurePath(rectBorderSmooth, borderRadius)) + using (GraphicsPath pathBorder = GetFigurePath(rectBorder, borderRadius - borderSize)) + using (Pen penBorderSmooth = new Pen(this.Parent.BackColor, smoothSize)) + using (Pen penBorder = new Pen(borderColor, borderSize)) + { + //-Drawing + this.Region = new Region(pathBorderSmooth);//Set the rounded region of UserControl + if (borderRadius > 15) SetTextBoxRoundedRegion();//Set the rounded region of TextBox component + graph.SmoothingMode = SmoothingMode.AntiAlias; + penBorder.Alignment = System.Drawing.Drawing2D.PenAlignment.Center; + if (isFocused) penBorder.Color = borderFocusColor; + + if (underlinedStyle) //Line Style + { + //Draw border smoothing + graph.DrawPath(penBorderSmooth, pathBorderSmooth); + //Draw border + graph.SmoothingMode = SmoothingMode.None; + graph.DrawLine(penBorder, 0, this.Height - 1, this.Width, this.Height - 1); + } + else //Normal Style + { + //Draw border smoothing + graph.DrawPath(penBorderSmooth, pathBorderSmooth); + //Draw border + graph.DrawPath(penBorder, pathBorder); + } + } + } + else //Square/Normal TextBox + { + //Draw border + using (Pen penBorder = new Pen(borderColor, borderSize)) + { + this.Region = new Region(this.ClientRectangle); + penBorder.Alignment = System.Drawing.Drawing2D.PenAlignment.Inset; + if (isFocused) penBorder.Color = borderFocusColor; + + if (underlinedStyle) //Line Style + graph.DrawLine(penBorder, 0, this.Height - 1, this.Width, this.Height - 1); + else //Normal Style + graph.DrawRectangle(penBorder, 0, 0, this.Width - 0.5F, this.Height - 0.5F); + } + } + } + #endregion + + #region -> Private methods + private void SetPlaceholder() + { + if (string.IsNullOrWhiteSpace(textBox1.Text) && placeholderText != "") + { + isPlaceholder = true; + textBox1.Text = placeholderText; + textBox1.ForeColor = placeholderColor; + if (isPasswordChar) + textBox1.UseSystemPasswordChar = false; + } + } + private void RemovePlaceholder() + { + if (isPlaceholder && placeholderText != "") + { + isPlaceholder = false; + textBox1.Text = ""; + textBox1.ForeColor = this.ForeColor; + if (isPasswordChar) + textBox1.UseSystemPasswordChar = true; + } + } + private GraphicsPath GetFigurePath(Rectangle rect, int radius) + { + GraphicsPath path = new GraphicsPath(); + float curveSize = radius * 2F; + + path.StartFigure(); + path.AddArc(rect.X, rect.Y, curveSize, curveSize, 180, 90); + path.AddArc(rect.Right - curveSize, rect.Y, curveSize, curveSize, 270, 90); + path.AddArc(rect.Right - curveSize, rect.Bottom - curveSize, curveSize, curveSize, 0, 90); + path.AddArc(rect.X, rect.Bottom - curveSize, curveSize, curveSize, 90, 90); + path.CloseFigure(); + return path; + } + private void SetTextBoxRoundedRegion() + { + GraphicsPath pathTxt; + if (Multiline) + { + pathTxt = GetFigurePath(textBox1.ClientRectangle, borderRadius - borderSize); + textBox1.Region = new Region(pathTxt); + } + else + { + pathTxt = GetFigurePath(textBox1.ClientRectangle, borderSize * 2); + textBox1.Region = new Region(pathTxt); + } + pathTxt.Dispose(); + } + private void UpdateControlHeight() + { + if (textBox1.Multiline == false) + { + int txtHeight = TextRenderer.MeasureText("Text", this.Font).Height + 1; + textBox1.Multiline = true; + textBox1.MinimumSize = new Size(0, txtHeight); + textBox1.Multiline = false; + + this.Height = textBox1.Height + this.Padding.Top + this.Padding.Bottom; + } + } + #endregion + + #region -> TextBox events + private void textBox1_TextChanged(object sender, EventArgs e) + { + if (_TextChanged != null) + _TextChanged.Invoke(sender, e); + } + private void textBox1_Click(object sender, EventArgs e) + { + this.OnClick(e); + } + private void textBox1_MouseEnter(object sender, EventArgs e) + { + this.OnMouseEnter(e); + } + private void textBox1_MouseLeave(object sender, EventArgs e) + { + this.OnMouseLeave(e); + } + private void textBox1_KeyPress(object sender, KeyPressEventArgs e) + { + this.OnKeyPress(e); + } + + private void textBox1_Enter(object sender, EventArgs e) + { + isFocused = true; + this.Invalidate(); + RemovePlaceholder(); + } + private void textBox1_Leave(object sender, EventArgs e) + { + isFocused = false; + this.Invalidate(); + SetPlaceholder(); + } + ///::::+ + #endregion + } +} diff --git a/DNS Changer/CustomTextBox.designer.cs b/DNS Changer/CustomTextBox.designer.cs new file mode 100644 index 0000000..2c76382 --- /dev/null +++ b/DNS Changer/CustomTextBox.designer.cs @@ -0,0 +1,70 @@ +namespace CustomControls.RJControls +{ + partial class CustomTextBox + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Component Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + this.textBox1 = new System.Windows.Forms.TextBox(); + this.SuspendLayout(); + // + // textBox1 + // + this.textBox1.BorderStyle = System.Windows.Forms.BorderStyle.None; + this.textBox1.Dock = System.Windows.Forms.DockStyle.Fill; + this.textBox1.Location = new System.Drawing.Point(10, 7); + this.textBox1.Name = "textBox1"; + this.textBox1.Size = new System.Drawing.Size(230, 15); + this.textBox1.TabIndex = 0; + this.textBox1.Click += new System.EventHandler(this.textBox1_Click); + this.textBox1.TextChanged += new System.EventHandler(this.textBox1_TextChanged); + this.textBox1.Enter += new System.EventHandler(this.textBox1_Enter); + this.textBox1.KeyPress += new System.Windows.Forms.KeyPressEventHandler(this.textBox1_KeyPress); + this.textBox1.Leave += new System.EventHandler(this.textBox1_Leave); + this.textBox1.MouseEnter += new System.EventHandler(this.textBox1_MouseEnter); + this.textBox1.MouseLeave += new System.EventHandler(this.textBox1_MouseLeave); + // + // CustomTextBox + // + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.None; + this.BackColor = System.Drawing.SystemColors.Window; + this.Controls.Add(this.textBox1); + this.Font = new System.Drawing.Font("Microsoft Sans Serif", 9.5F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + this.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(64)))), ((int)(((byte)(64)))), ((int)(((byte)(64))))); + this.Margin = new System.Windows.Forms.Padding(4); + this.Name = "CustomTextBox"; + this.Padding = new System.Windows.Forms.Padding(10, 7, 10, 7); + this.Size = new System.Drawing.Size(250, 30); + this.ResumeLayout(false); + this.PerformLayout(); + + } + + #endregion + + private System.Windows.Forms.TextBox textBox1; + } +} diff --git a/DNS Changer/CustomTextBox.resx b/DNS Changer/CustomTextBox.resx new file mode 100644 index 0000000..1af7de1 --- /dev/null +++ b/DNS Changer/CustomTextBox.resx @@ -0,0 +1,120 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + \ No newline at end of file diff --git a/DNS Changer/DNS Changer.Designer.cs b/DNS Changer/DNS Changer.Designer.cs new file mode 100644 index 0000000..1a88371 --- /dev/null +++ b/DNS Changer/DNS Changer.Designer.cs @@ -0,0 +1,259 @@ +namespace DNS_Changer +{ + partial class DNS_Changer + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Windows Form Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(DNS_Changer)); + this.lblText = new System.Windows.Forms.Label(); + this.panel = new CustomPanel(); + this.btnStop = new System.Windows.Forms.Button(); + this.btnConnect = new System.Windows.Forms.Button(); + this.lblAlt = new System.Windows.Forms.Label(); + this.boxIP2 = new CustomControls.RJControls.CustomTextBox(); + this.lblIP = new System.Windows.Forms.Label(); + this.lblStatus = new System.Windows.Forms.Label(); + this.lblPre = new System.Windows.Forms.Label(); + this.boxIP1 = new CustomControls.RJControls.CustomTextBox(); + this.btnInfo = new System.Windows.Forms.Button(); + this.panel.SuspendLayout(); + this.SuspendLayout(); + // + // lblText + // + this.lblText.Font = new System.Drawing.Font("Century Gothic", 18.25F, System.Drawing.FontStyle.Bold); + this.lblText.ForeColor = System.Drawing.Color.White; + this.lblText.Location = new System.Drawing.Point(35, 0); + this.lblText.Margin = new System.Windows.Forms.Padding(0); + this.lblText.Name = "lblText"; + this.lblText.Size = new System.Drawing.Size(284, 45); + this.lblText.TabIndex = 2; + this.lblText.Text = "DNS Changer"; + this.lblText.TextAlign = System.Drawing.ContentAlignment.MiddleCenter; + // + // panel + // + this.panel.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(15)))), ((int)(((byte)(52)))), ((int)(((byte)(96))))); + this.panel.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(15)))), ((int)(((byte)(52)))), ((int)(((byte)(96))))); + this.panel.BorderFocusColor = System.Drawing.Color.FromArgb(((int)(((byte)(15)))), ((int)(((byte)(52)))), ((int)(((byte)(96))))); + this.panel.BorderRadius = 15; + this.panel.BorderSize = 1; + this.panel.Controls.Add(this.btnStop); + this.panel.Controls.Add(this.btnConnect); + this.panel.Controls.Add(this.lblAlt); + this.panel.Controls.Add(this.boxIP2); + this.panel.Controls.Add(this.lblIP); + this.panel.Controls.Add(this.lblStatus); + this.panel.Controls.Add(this.lblPre); + this.panel.Controls.Add(this.boxIP1); + this.panel.Location = new System.Drawing.Point(35, 45); + this.panel.Margin = new System.Windows.Forms.Padding(0); + this.panel.Name = "panel"; + this.panel.Size = new System.Drawing.Size(304, 421); + this.panel.TabIndex = 3; + this.panel.UnderlinedStyle = false; + // + // btnStop + // + this.btnStop.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(247)))), ((int)(((byte)(86)))), ((int)(((byte)(91))))); + this.btnStop.Cursor = System.Windows.Forms.Cursors.Hand; + this.btnStop.FlatAppearance.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(192)))), ((int)(((byte)(0)))), ((int)(((byte)(0))))); + this.btnStop.FlatStyle = System.Windows.Forms.FlatStyle.Flat; + this.btnStop.Font = new System.Drawing.Font("Century Gothic", 15.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + this.btnStop.Location = new System.Drawing.Point(161, 346); + this.btnStop.Margin = new System.Windows.Forms.Padding(4); + this.btnStop.Name = "btnStop"; + this.btnStop.Size = new System.Drawing.Size(115, 42); + this.btnStop.TabIndex = 3; + this.btnStop.Text = "Stop"; + this.btnStop.UseVisualStyleBackColor = false; + this.btnStop.Click += new System.EventHandler(this.btnStop_Click); + // + // btnConnect + // + this.btnConnect.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(3)))), ((int)(((byte)(196)))), ((int)(((byte)(161))))); + this.btnConnect.Cursor = System.Windows.Forms.Cursors.Hand; + this.btnConnect.FlatAppearance.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(0)))), ((int)(((byte)(192)))), ((int)(((byte)(0))))); + this.btnConnect.FlatStyle = System.Windows.Forms.FlatStyle.Flat; + this.btnConnect.Font = new System.Drawing.Font("Century Gothic", 15F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + this.btnConnect.Location = new System.Drawing.Point(32, 346); + this.btnConnect.Margin = new System.Windows.Forms.Padding(0); + this.btnConnect.Name = "btnConnect"; + this.btnConnect.Size = new System.Drawing.Size(117, 42); + this.btnConnect.TabIndex = 2; + this.btnConnect.Text = "Connect"; + this.btnConnect.UseVisualStyleBackColor = false; + this.btnConnect.Click += new System.EventHandler(this.btnConnect_Click); + // + // lblAlt + // + this.lblAlt.AutoSize = true; + this.lblAlt.Font = new System.Drawing.Font("Century Gothic", 11.5F); + this.lblAlt.Location = new System.Drawing.Point(28, 206); + this.lblAlt.Name = "lblAlt"; + this.lblAlt.Size = new System.Drawing.Size(182, 21); + this.lblAlt.TabIndex = 1; + this.lblAlt.Text = "Alternate DNS Server :"; + // + // boxIP2 + // + this.boxIP2.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(22)))), ((int)(((byte)(33)))), ((int)(((byte)(62))))); + this.boxIP2.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(87)))), ((int)(((byte)(108)))), ((int)(((byte)(188))))); + this.boxIP2.BorderFocusColor = System.Drawing.Color.FromArgb(((int)(((byte)(3)))), ((int)(((byte)(201)))), ((int)(((byte)(136))))); + this.boxIP2.BorderRadius = 10; + this.boxIP2.BorderSize = 1; + this.boxIP2.Font = new System.Drawing.Font("Century Gothic", 14.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + this.boxIP2.ForeColor = System.Drawing.Color.White; + this.boxIP2.Location = new System.Drawing.Point(28, 232); + this.boxIP2.Margin = new System.Windows.Forms.Padding(4); + this.boxIP2.Multiline = false; + this.boxIP2.Name = "boxIP2"; + this.boxIP2.Padding = new System.Windows.Forms.Padding(10, 7, 10, 7); + this.boxIP2.PasswordChar = false; + this.boxIP2.PlaceholderColor = System.Drawing.Color.Gray; + this.boxIP2.PlaceholderText = "Example: 1.0.0.1"; + this.boxIP2.Size = new System.Drawing.Size(248, 38); + this.boxIP2.TabIndex = 0; + this.boxIP2.Texts = ""; + this.boxIP2.UnderlinedStyle = false; + // + // lblIP + // + this.lblIP.AutoSize = true; + this.lblIP.Cursor = System.Windows.Forms.Cursors.Hand; + this.lblIP.Font = new System.Drawing.Font("Microsoft Sans Serif", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + this.lblIP.ForeColor = System.Drawing.Color.LightSkyBlue; + this.lblIP.Location = new System.Drawing.Point(148, 64); + this.lblIP.Name = "lblIP"; + this.lblIP.Size = new System.Drawing.Size(0, 20); + this.lblIP.TabIndex = 1; + this.lblIP.Click += new System.EventHandler(this.lblIP_Click); + this.lblIP.MouseLeave += new System.EventHandler(this.label1_MouseLeave); + this.lblIP.MouseHover += new System.EventHandler(this.lblIP_MouseHover); + // + // lblStatus + // + this.lblStatus.Font = new System.Drawing.Font("MV Boli", 24F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + this.lblStatus.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(80)))), ((int)(((byte)(80))))); + this.lblStatus.Location = new System.Drawing.Point(3, 17); + this.lblStatus.Name = "lblStatus"; + this.lblStatus.Size = new System.Drawing.Size(308, 56); + this.lblStatus.TabIndex = 1; + this.lblStatus.Text = "Not Set"; + this.lblStatus.TextAlign = System.Drawing.ContentAlignment.MiddleCenter; + // + // lblPre + // + this.lblPre.AutoSize = true; + this.lblPre.Font = new System.Drawing.Font("Century Gothic", 11.5F); + this.lblPre.Location = new System.Drawing.Point(28, 113); + this.lblPre.Name = "lblPre"; + this.lblPre.Size = new System.Drawing.Size(176, 21); + this.lblPre.TabIndex = 1; + this.lblPre.Text = "Preferred DNS Server :"; + // + // boxIP1 + // + this.boxIP1.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(22)))), ((int)(((byte)(33)))), ((int)(((byte)(62))))); + this.boxIP1.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(87)))), ((int)(((byte)(108)))), ((int)(((byte)(188))))); + this.boxIP1.BorderFocusColor = System.Drawing.Color.FromArgb(((int)(((byte)(3)))), ((int)(((byte)(201)))), ((int)(((byte)(136))))); + this.boxIP1.BorderRadius = 10; + this.boxIP1.BorderSize = 1; + this.boxIP1.Font = new System.Drawing.Font("Century Gothic", 14.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + this.boxIP1.ForeColor = System.Drawing.Color.White; + this.boxIP1.Location = new System.Drawing.Point(28, 139); + this.boxIP1.Margin = new System.Windows.Forms.Padding(4); + this.boxIP1.Multiline = false; + this.boxIP1.Name = "boxIP1"; + this.boxIP1.Padding = new System.Windows.Forms.Padding(10, 7, 10, 7); + this.boxIP1.PasswordChar = false; + this.boxIP1.PlaceholderColor = System.Drawing.Color.Gray; + this.boxIP1.PlaceholderText = "Example: 1.1.1.1"; + this.boxIP1.Size = new System.Drawing.Size(248, 38); + this.boxIP1.TabIndex = 0; + this.boxIP1.Texts = ""; + this.boxIP1.UnderlinedStyle = false; + // + // btnInfo + // + this.btnInfo.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Zoom; + this.btnInfo.Cursor = System.Windows.Forms.Cursors.Hand; + this.btnInfo.FlatAppearance.BorderSize = 0; + this.btnInfo.FlatAppearance.MouseDownBackColor = System.Drawing.Color.FromArgb(((int)(((byte)(72)))), ((int)(((byte)(83)))), ((int)(((byte)(112))))); + this.btnInfo.FlatAppearance.MouseOverBackColor = System.Drawing.Color.FromArgb(((int)(((byte)(37)))), ((int)(((byte)(48)))), ((int)(((byte)(77))))); + this.btnInfo.FlatStyle = System.Windows.Forms.FlatStyle.Flat; + this.btnInfo.Image = ((System.Drawing.Image)(resources.GetObject("btnInfo.Image"))); + this.btnInfo.Location = new System.Drawing.Point(261, 5); + this.btnInfo.Margin = new System.Windows.Forms.Padding(0); + this.btnInfo.Name = "btnInfo"; + this.btnInfo.Size = new System.Drawing.Size(35, 35); + this.btnInfo.TabIndex = 4; + this.btnInfo.UseVisualStyleBackColor = true; + this.btnInfo.Click += new System.EventHandler(this.btnInfo_Click); + // + // DNS_Changer + // + this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 16F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(22)))), ((int)(((byte)(33)))), ((int)(((byte)(62))))); + this.ClientSize = new System.Drawing.Size(374, 501); + this.Controls.Add(this.btnInfo); + this.Controls.Add(this.panel); + this.Controls.Add(this.lblText); + this.Font = new System.Drawing.Font("Century Gothic", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + this.ForeColor = System.Drawing.Color.White; + this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle; + this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon"))); + this.Margin = new System.Windows.Forms.Padding(4); + this.MaximizeBox = false; + this.Name = "DNS_Changer"; + this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen; + this.Text = "DNS Changer"; + this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.DNS_Changer_FormClosing); + this.Load += new System.EventHandler(this.DNS_Changer_Load); + this.Shown += new System.EventHandler(this.DNS_Changer_Shown); + this.panel.ResumeLayout(false); + this.panel.PerformLayout(); + this.ResumeLayout(false); + + } + + #endregion + + private System.Windows.Forms.Label lblText; + private CustomControls.RJControls.CustomTextBox boxIP1; + private System.Windows.Forms.Label lblAlt; + private CustomControls.RJControls.CustomTextBox boxIP2; + private System.Windows.Forms.Label lblPre; + private System.Windows.Forms.Label lblStatus; + private System.Windows.Forms.Button btnStop; + private System.Windows.Forms.Button btnConnect; + private CustomPanel panel; + private System.Windows.Forms.Label lblIP; + private System.Windows.Forms.Button btnInfo; + } +} \ No newline at end of file diff --git a/DNS Changer/DNS Changer.cs b/DNS Changer/DNS Changer.cs new file mode 100644 index 0000000..5c18f9a --- /dev/null +++ b/DNS Changer/DNS Changer.cs @@ -0,0 +1,192 @@ +using System; +using System.Net.NetworkInformation; +using System.Net.Sockets; +using System.Windows.Forms; +using System.Net; +using System.Diagnostics; +using System.Drawing; +using System.Threading.Tasks; + +namespace DNS_Changer +{ + public partial class DNS_Changer : Form + { + string WifiDns; + string WifiName; + + public DNS_Changer() + { + InitializeComponent(); + + var preference = Convert.ToInt32(true); // Make norder darkthemed + DarkTheme.DwmSetWindowAttribute(this.Handle, DarkTheme.DWMWINDOWATTRIBUTE.DWMWA_USE_IMMERSIVE_DARK_MODE, ref preference, sizeof(uint)); + } + + private void DNS_Changer_Load(object sender, EventArgs e) + { + WifiInf(out WifiName); + + CheckActivision(); + } + + private void DNS_Changer_Shown(object sender, EventArgs e) + { + if (Data.Default.IP1 != "" || Data.Default.IP2 != "") // Load ips + { + boxIP1.Focus(); + boxIP1.Texts = Data.Default.IP1; + boxIP2.Focus(); + boxIP2.Texts = Data.Default.IP2; + } + + lblText.Focus(); + } + + private async void btnConnect_Click(object sender, EventArgs e) + { + await ExeCommand($"/c netsh interface ip set dns name=\"{WifiName}\" static {boxIP1.Texts} & netsh interface ip add dns name=\"{WifiName}\" {boxIP2.Texts} index=2"); + + CheckActivision(); + } + + private async void btnStop_Click(object sender, EventArgs e) + { + await ExeCommand($"/c netsh interface ip delete dns name=\"{WifiName}\" all"); + + lblStatus.Text = "Disconnected"; + lblStatus.ForeColor = Color.FromArgb(255, 80, 80); + lblIP.Text = ""; + } + + private void WifiInf(out string nic) // To get current wifi config + { + nic = ""; + foreach (NetworkInterface ni in NetworkInterface.GetAllNetworkInterfaces()) + { + if (ni.NetworkInterfaceType == NetworkInterfaceType.Wireless80211) + { + foreach (UnicastIPAddressInformation ips in ni.GetIPProperties().UnicastAddresses) + { + if (ips.Address.AddressFamily == System.Net.Sockets.AddressFamily.InterNetwork && !ips.Address.ToString().StartsWith("169")) //to exclude automatic ips + { + nic = ni.Name; + } + } + } + } + } + + ProcessStartInfo startInfo = new ProcessStartInfo + { + Verb = "runas", + WindowStyle = ProcessWindowStyle.Hidden, + FileName = "cmd.exe", + }; + + private async Task ExeCommand(string arg) // Execute a cmd command asynchronously + { + try + { + startInfo.Arguments = arg; + + await Task.Run(() => + { + Process process = new Process(); + process.StartInfo = startInfo; + process.Start(); + process.WaitForExit(); + }); + } + catch (Exception ex) + { + MessageBox.Show(ex.Message); + } + } + + private void CheckActivision() // Check if a custom DNS is enabled + { + bool isCustomDNS = DnsInf(out WifiDns); + + if (isCustomDNS) + { + lblStatus.Text = "Connected !"; + lblStatus.ForeColor = Color.FromArgb(100, 255, 100); + lblIP.Text = $"to {WifiDns}"; + } + } + + private bool DnsInf(out string dns) // To get DNS ip and router ip config + { + IPAddress routerIp = null; + dns = ""; + + foreach (NetworkInterface ni in NetworkInterface.GetAllNetworkInterfaces()) + { + if (ni.NetworkInterfaceType == NetworkInterfaceType.Wireless80211) + { + IPInterfaceProperties ipProps = ni.GetIPProperties(); + if (ipProps.GatewayAddresses.Count > 0) + { + routerIp = ipProps.GatewayAddresses[0].Address; + } + + foreach (IPAddress dnsAddress in ni.GetIPProperties().DnsAddresses) + { + if (dnsAddress.AddressFamily == AddressFamily.InterNetwork) + { + dns = dnsAddress.ToString(); + break; + } + } + } + } + + if (dns != routerIp.ToString()) + { + return true; + } + + return false; + } + + private void DNS_Changer_FormClosing(object sender, FormClosingEventArgs e) + { + if (boxIP1.Texts != "" || boxIP2.Texts != "") // Save ips + { + Data.Default.IP1 = boxIP1.Texts; + Data.Default.IP2 = boxIP2.Texts; + Data.Default.Save(); + } + } + + private void lblIP_MouseHover(object sender, EventArgs e) + { + lblIP.Font = new Font(lblIP.Font.Name, 12, FontStyle.Underline); + } + + private void label1_MouseLeave(object sender, EventArgs e) + { + lblIP.Font = new Font(lblIP.Font.Name, 12); + } + + private async void lblIP_Click(object sender, EventArgs e) + { + Process p = new Process(); + p.StartInfo.UseShellExecute = false; + p.StartInfo.RedirectStandardOutput = true; + p.StartInfo.FileName = "nslookup"; + p.StartInfo.Arguments = "exit"; + p.StartInfo.CreateNoWindow = true; + p.Start(); + string output = await p.StandardOutput.ReadToEndAsync(); + p.WaitForExit(); + + MessageBox.Show(output); + } + + private void btnInfo_Click(object sender, EventArgs e) + { + Process.Start("https://github.com/NeutronOrg/DNS-Changer"); + } + } +} diff --git a/DNS Changer/DNS Changer.csproj b/DNS Changer/DNS Changer.csproj new file mode 100644 index 0000000..3b8e124 --- /dev/null +++ b/DNS Changer/DNS Changer.csproj @@ -0,0 +1,114 @@ + + + + + Debug + AnyCPU + {DFB25EC4-9DA4-4953-A9F8-79370BD45002} + WinExe + DNS_Changer + DNS Changer + v4.8 + 512 + true + true + + + AnyCPU + true + full + false + bin\Debug\ + DEBUG;TRACE + prompt + 4 + + + AnyCPU + pdbonly + true + bin\Release\ + TRACE + prompt + 4 + + + Dns-Icon.ico + + + + + + + + + + + + + + + + + Component + + + CustomPanel.cs + + + + True + True + Data.settings + + + Form + + + DNS Changer.cs + + + + + UserControl + + + CustomTextBox.cs + + + DNS Changer.cs + + + ResXFileCodeGenerator + Resources.Designer.cs + Designer + + + True + Resources.resx + + + CustomTextBox.cs + + + SettingsSingleFileGenerator + Data.Designer.cs + + + SettingsSingleFileGenerator + Settings.Designer.cs + + + True + Settings.settings + True + + + + + + + + + + \ No newline at end of file diff --git a/DNS Changer/DNS Changer.resx b/DNS Changer/DNS Changer.resx new file mode 100644 index 0000000..4140168 --- /dev/null +++ b/DNS Changer/DNS Changer.resx @@ -0,0 +1,220 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + + + iVBORw0KGgoAAAANSUhEUgAAAB4AAAAeCAYAAAA7MK6iAAAAIGNIUk0AAHomAACAhAAA+gAAAIDoAAB1 + MAAA6mAAADqYAAAXcJy6UTwAAAAJcEhZcwAACwwAAAsMAT9AIsgAAAAHdElNRQfnCQQTDQ2QmGtlAAAD + 1ElEQVRIS82WzU9UVxiH74JN6UKMRQYQtHVRxE1XXfmRCBprbG1aXbcmfDhz5w4fEQkCgsate1GrSf8H + /4l+rhRT001NjBGQxHaIgvD2+Z25d7gzXi4wccGbPLnnnq/fec95z4e3Yy2fMW+oybwevn4z8FVehPLy + ym+hDvWUl4OabWifeZf2ljrNQW/G6hDZT8dnIAujcIXyS3AG4fbeJqsLwsENtJnXt3ubA8gx+oDRO++a + 7WMETiF6l/QsLMAyWIjSyntMnRnqdvtNVh+EfZAf9rqJydM8jbKMmEadIMFXEAlthgZxGzp8+pDnU52b + iGuUBeiTp3hJ49/DzmrhFzjx4y7zBhFX34kmT5kib2C/C5huGj2JdVJJBhpDlE6qU2KW5eqS1zn6Tlzz + rNaU9WCaD9Pgj6oO1mkyK3y5ZpdvLDuUVl5i3RLyvEMeawAVJkEXDC0EUrPdizV6H7wcOv/OJheLDqWd + 50l117nNbH6kYBVl81tL08wATlNpsapRJYgMfr1q44+WHEpvQXieJenSVgviwoVGMhqtjsL7CY0q2Qv7 + zILDa458e1X5RmRsph+NXs6Gsmm/wadU2DigIDhgNnB01QaOhZAODlKWHmARj6jXBqEqRqb4BjaeZjyV + 0MTTJZt4VizxT9EGv93SGgvtby1lqIrpB/LwDpIalYSPr9rkc4JqAebgJcH1/ZaFdcL1Q6iKhdE2Hqv0 + Pkxn8PmaDfes2Mitt050m8JiFEJVbEvCAnG/gag+x3b6IML8QPpURyAisRqENdW6yUJVTD+QHlwRtQsv + 4NxXcrJsZIrPIHU7uW3zCcLfxYRJK8+VJbVZ5zHXbbuu3LJxeHg+m5t1fpDQoEzQsWYFDo3Biys2+uI/ + h9LKU1lSmxh3+ngo6JVStiyj0MZOPTJbzEZ/fmOTfy1ZfvZf634671BaeSpTncS22sMZOylvh+Inl6Ka + QqFL4qewciV0OvbwjU0Vi+bPvbYjf885lFaeylKEZ4LW9VdJhenwpoK81rWY+AAY7mUP31y2/PRbuzBW + dCitPJUltYFf4ZCcy8W9jYw71fMpGD7HN2NXqbwaa1xCF4QiGIgLR/TvyqrrK1h5g+X0AqF/PTIqbGSP + efNeON0Z+4Lvn7HGtfIbDnRPELj9XLsV0RyZ3sQqQLSVBg+rOtguehjeoa9DhXYejfT7Q7WnkWXxFBpo + oBdlUmdprIDE9PS9h+Ap3uH1fN2a6vLf0HSagO7jEbgOUzCdBtN4DcYR8Pk/y/dAgX0a9uWx7l4Wj1Ot + XHkbKEqFPHN5fAvyUI8K0jvUPO9/btBa6HiVAD8AAAAASUVORK5CYII= + + + + + AAABAAEAICAAAAEAIACoEAAAFgAAACgAAAAgAAAAQAAAAAEAIAAAAAAAABAAABMLAAATCwAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAzKOAAMuifwLPpoQPz6WDMcmb + ekPGmHZGxpl2RsmcekPPpYMxz6aDD8yiggLNpIIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADMnXgAz6eIAMygfg7Xr4xG2LKPj9St + isPeupfk3LeT9OTDn/bkw5723LeT9N66l+TUrYrD2bOPj9evjEbOo4APy6N/ANCkggAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADZp4YAy6KAAMebegjVr4xR48GduefH + o/Pkw57/8tax//jfuf/rzKf//ebA//3mwP/rzKf/+d+5//LWsP/kw57/6Mij8+PBnbrWr4xSyp57Cc+k + gQDSsYkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA8sasAMejfADVrYoh37yYnfHT + r/P02bT/682o//rivP//68X/8dWw//PYs///6sT//+rE//PYs//x1rD//+vF//rhu//rzaj/9dm0//DT + rvTgvJie1q6LIsqdeADx1LEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANCmhADLoH0AzaKANtew + jcbrzKf/8NSv/+G/mv/u0Kv/89ey//LWsP/jwp3/7tGs//LWsf/y1rH/7tGs/+PBnf/y1rD/89ey/+3P + q//hv5v/8dSv/+vMqP/XsI3HzqOBNsyffgDQp4QAAAAAAAAAAAAAAAAAAAAAAAAAAADgwpwA06qHANKq + hzblw57S8dWw//LVsP/iv5v/7tCr//PXsv/y1rH/7tCr/+TCnv/y1rH/8tax//LWsf/y1rH/5MKe/+7Q + q//y1rH/89ey/+3Qq//iv5z/8tWw//HVr//kw5/T06qHN9OuiQDet5MAAAAAAAAAAAAAAAAA/+/HANGp + hgDPp4Qi48Kex/vivf//6sT/9dq1/+/Srf//6cP//+nD///qxP/127X/8NSv///qxP//6cP//+nD///q + xP/w1K//9du2///qxP//6cP//+nD/+/Srf/12rX//+rE//vivf/jwp7H0KeFItKphwD/89AAAAAAAAAA + AADVrYkAyp16Cd66lp/43rj//+nD//3mwP/qzKf/+uK8///owv//6ML//+nD//DTrv/12rX//+nD///o + wv//6ML//+nD//XatP/w1K7//+nD///owv//6ML/+uG8/+vMp//+5sD//+nD//feuP/eupaeyZ97CdWv + igAAAAAA///bANOqhwDUq4hU7M6p9P3lv//85b//89iz/+vNp//85L7//OS+//zkvv/85L7/6syn//bb + tv/85L7//OS+//zkvv/85L7/9tu2/+vMp//85L7//OS+//zkvv/85L7/68yn//TZs//85b///eW//+zO + qfPTq4hT06uHAPzq0QDMoX8AyJt5Edi2lr/pza7/6tCx/+rQsf/ny6z/58ut/+rQsf/q0LH/6tCx/+rQ + sf/lyav/6c6w/+rQsf/q0LH/6tCx/+rQsf/pzq//5sqr/+rQsf/q0LH/6tCx/+rQsf/oy63/58ut/+rQ + sf/q0LH/6c2u/9m1lr/InHkRy6KAANKrigDQp4VM7te89v/z3P//893///Td///03f//9N3///Pd///z + 3P//8tv///Lb///z3P//9N3///Td///y3P//8tv///Lb///03f//9N3///Td///y2///89z///Pd///0 + 3f//9N3///Pc///y2///89z/7te89s+nhkzSqosAiTQAAtm2l5f56ND///Pc/+/Xuv/mx6f/58io/+jI + qf/s0LL/9uTK//7y2///89z/+ObN/+bIqP/myKj/+ObN///z3P/+8Nn/7dO2/+bHpv/r0LL//O3W//Ld + wv/py6z/6Men/+nMrf/04Mb//vHb///z3P/46M//2baXloQwAALBj2sT4sSoyf7w2f//8tz/4LiU/+ar + f//nrYH/5at+/+WsgP/groX/6cqr//7x2v/u1rr/36Z7/9+me//u1rr///Xf//DYvP/fqoD/6K2B/92u + h//pzK7/3qh//+Sqfv/jqX3/5auA/+Csg//s0LL///Lb//7w2f/ixKfIwI1qE8yhfjjpz7Pq//Pc///y + 2//iupf/7bOG/92ofv/gt5T/4LCJ/+ivg//iq4D/68+w/+/Xu//lrIH/5ayB/+/Xu//77NT/37ON/+yy + hv/wtor/4LKL/+PCov/apn3/47uX/+XAnv/gr4j/7LKF/9+viP/56dD///Pc/+nPs+rMoH84zKOBRe7Y + vfX/89z///Lb/+K6l//ssoX/37CJ//vt1f/35cz/4LSO/+uxhf/htY7/69Cz/+Wtgf/lrIH/7ta7/+jI + qf/kq4D/36V5/+60iP/gsYr/8Nq///Pew//98Nn/9OHH/96zjf/ts4b/4KyD//flzP//9N3/7ti99c2j + gkXMooFG8dzC9v/z3P//8tv/4rqX/+yyhf/fsIn//O3W///03f/mxaX/6a+D/+Kvhv/nyqz/5a2C/+Wt + gv/iwqL/4a6F/+OsgP/RnHL/7bOH/9+wif/87tf/9uPJ/+O+nP/hrYT/6bCE/+atgf/iu5j//e/X///z + 3f/x3ML2zKKCRsuigUbx3MP2//Pc///y2//iupf/7LKF/9+wif/87db///Te/+bGpv/pr4P/4a6F/+bJ + q//lrYL/46p//9Ofd//nrYL/4biV/961kf/tsoX/4LGK//Pgxv/fr4n/6a+D/+ivg//groX/5cOi//np + 0f//89z///Pc//Hcw/bMooJGzKODRe/Yvvb/89z///Lb/+K6l//ssoX/37CJ//vt1f/45s3/4LWQ/+ux + hf/hs4z/6s+x/+Wtgf/oroL/4qh8/+CthP/z38X/4ruY/+yyhf/gsov/58mr/+atgv/psIT/4LmX//bl + zP/979f/+unR///y2///89z/79i+9c2jg0XMon866dC06//z3P//8tv/4rqX/+2zhv/dqH7/4LiU/+Cx + iv/psIT/5q2B/+fGpv/u17v/5KyA//G4jP/lrYH/58eo///y3P/iupf/7LKF/+Cyi//qz7L/46yB/+ux + hf/gsoz/5sKg/9+1kf/fu5n///Ha///z3P/p0LXrzaGAOcCSbBXjxqnL/vDZ///y3P/guJT/5qt//+et + gf/lq37/5qyA/+Gsgv/jvJn/++zU/+/Xu//epXr/6K2B/9+zjv/66tL///Pc/+C4lP/lqn3/3K2G//jn + z//jvZr/4qyB/+Wrf//jqX3/4ad7/+C6l///8tv//vDZ/+PGqcrCkmwUmEYVAtq4mpz56dH///Pc/+/X + uv/mx6f/58io/+fIqP/qza7/8tzB//3v1///893/+ObN/+bIqP/nyKj/9ODF///z3P//8tv/79e6/+bG + pv/r0LL//vHa//zu1//w2b3/6cqr/+jHqP/rz7D/9+TL///z3P/56dH/2riZm5JDEwLTrY0A0KmIUu/Z + v/j/89z///Pd///03f//9N3///Td///z3f//89z///Lb///y2///89z///Td///03f//89z///Lb///y + 2///893///Td///03f//8tv///Lb///z3P//9N3///Td///z3f//89z///Pc/+/Zv/fRqYdR062MAMuh + fgDInHkU2reYxunOr//q0LH/6tCx/+fLrf/ny63/6tCx/+rQsf/q0LH/6tCx/+XJq//pz7D/6tCx/+rQ + sf/q0LH/6tCx/+nOr//myav/6tCx/+rQsf/q0LH/6tCx/+jLrf/ny63/6tCx/+rQsf/pzq//2baXxcib + eBTLoH4A3rKTANeyjQDUrIlb7tCr9v3lvv/85b//89iz/+vMqP/85L7//OS+//zkvv/85L7/68yn//bc + tv/85L7//OS+//zkvv/85L7/9tu2/+vMp//85L7//OS+//zkvv/85L7/68yn//TZs//85b///eW+/+7Q + qvbUrIla2LGMANqxkgAAAAAA066JAMmgfQvfvJin+eC6///pw//95sD/6syn//rivP//6ML//+jC///p + w//w067/9dq1///pw///6ML//+jC///pw//12rX/8NSv///pw///6ML//+jC//rhvP/rzKj//ubA///p + w//537r/37yZpsuffwvUrYwAAAAAAAAAAADkwp4A06uHANGphSjlxJ/O/OS+///qxP/02rX/79Kt///p + w///6cP//+rE//Xbtf/x1K///+rE///pw///6cP//+rE//DUr//127b//+rE///pw///6cP/79Ks//Xa + tf//6sT//OO+/+XEoM7SqIYo06qHAOjFogAAAAAAAAAAAAAAAADZs48A17GNANStiT/mxaDZ8dWw//LV + sP/iv5v/7tCr//PXsv/y1rH/7dCr/+TCnv/y1rH/8tax//LWsf/y1rH/5MKe/+7Qq//y1rH/89ey/+7Q + q//iv5v/8tWw//HVsP/mxaDb1a2KQNSvkADctY4AAAAAAAAAAAAAAAAAAAAAAAAAAADYtI8ArnRUAM6k + gj7Yso/O7M6p//DUr//hvpr/7tCr//PXsv/y1rD/48Kd/+7RrP/y1rH/8tax/+7RrP/jwp3/8taw//PX + sv/tz6v/4b6a//DUr//szqn/2LKPzs+lgj+kb1IA2bONAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AADjwZwApmpRANWuiyjhvpqn8taw9vXatf/rzaj/+uK8///rxf/x1bD/9Niz///qxP//6sT/89iz//HW + sP//68X/+uK8/+zNqP/127X/8taw9uG+mqfVrooom2ZVAOXDmwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAADKnX0Az6eCAMqgfAvXsI1a5MOfv+nJpPXlxJ//8tax//jfuf/rzKj//ebA//3m + wP/rzKj/+d+6//LWsf/lw5//6cmk9eTDn8HXsY5azKB/DNGnhgDKnnwAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAzqaCAMybggDMooAR17CNS9mzkJPVrYrF3ruX5dy3 + k/Tlw5/25MOf9ty3lPTeu5fl1a2Kxdm0kJPXsI1Lz6SDErdyUQDTrIsAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAL6GXQDUspQAyJp1AtCn + hRHPpYIzyJx6RMaZd0bGmXZGyJx6RM6lgjPQp4QRyZx4AsueewAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAA/+AH//+AAf/+AAB//AAAP/gAAB/wAAAP4AAAB8AAAAPAAAADgAAAAYAA + AAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAYAAAAHAAAADwAAAA+AA + AAfwAAAP+AAAH/wAAD/+AAB//4AB///gB/8= + + + \ No newline at end of file diff --git a/DNS Changer/DNS Changer.sln b/DNS Changer/DNS Changer.sln new file mode 100644 index 0000000..d916943 --- /dev/null +++ b/DNS Changer/DNS Changer.sln @@ -0,0 +1,25 @@ + +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio Version 17 +VisualStudioVersion = 17.5.33627.172 +MinimumVisualStudioVersion = 10.0.40219.1 +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "DNS Changer", "DNS Changer.csproj", "{DFB25EC4-9DA4-4953-A9F8-79370BD45002}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Any CPU = Debug|Any CPU + Release|Any CPU = Release|Any CPU + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {DFB25EC4-9DA4-4953-A9F8-79370BD45002}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {DFB25EC4-9DA4-4953-A9F8-79370BD45002}.Debug|Any CPU.Build.0 = Debug|Any CPU + {DFB25EC4-9DA4-4953-A9F8-79370BD45002}.Release|Any CPU.ActiveCfg = Release|Any CPU + {DFB25EC4-9DA4-4953-A9F8-79370BD45002}.Release|Any CPU.Build.0 = Release|Any CPU + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection + GlobalSection(ExtensibilityGlobals) = postSolution + SolutionGuid = {DCB57F78-BB26-4C8D-999D-76BC0E54FD77} + EndGlobalSection +EndGlobal diff --git a/DNS Changer/DarkTheme.cs b/DNS Changer/DarkTheme.cs new file mode 100644 index 0000000..785fef9 --- /dev/null +++ b/DNS Changer/DarkTheme.cs @@ -0,0 +1,16 @@ +using System; +using System.Runtime.InteropServices; + +namespace DNS_Changer +{ + internal class DarkTheme + { + [DllImport("dwmapi.dll", CharSet = CharSet.Unicode, PreserveSig = false)] + public static extern void DwmSetWindowAttribute(IntPtr hwnd, DWMWINDOWATTRIBUTE attribute, ref int pvAttribute, uint cbAttribute); + + public enum DWMWINDOWATTRIBUTE : uint + { + DWMWA_USE_IMMERSIVE_DARK_MODE = 20, + } + } +} diff --git a/DNS Changer/Data.Designer.cs b/DNS Changer/Data.Designer.cs new file mode 100644 index 0000000..a3b42f0 --- /dev/null +++ b/DNS Changer/Data.Designer.cs @@ -0,0 +1,50 @@ +//------------------------------------------------------------------------------ +// +// This code was generated by a tool. +// Runtime Version:4.0.30319.42000 +// +// Changes to this file may cause incorrect behavior and will be lost if +// the code is regenerated. +// +//------------------------------------------------------------------------------ + +namespace DNS_Changer { + + + [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "17.5.0.0")] + internal sealed partial class Data : global::System.Configuration.ApplicationSettingsBase { + + private static Data defaultInstance = ((Data)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Data()))); + + public static Data Default { + get { + return defaultInstance; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("")] + public string IP1 { + get { + return ((string)(this["IP1"])); + } + set { + this["IP1"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("")] + public string IP2 { + get { + return ((string)(this["IP2"])); + } + set { + this["IP2"] = value; + } + } + } +} diff --git a/DNS Changer/Data.settings b/DNS Changer/Data.settings new file mode 100644 index 0000000..e61d91f --- /dev/null +++ b/DNS Changer/Data.settings @@ -0,0 +1,12 @@ + + + + + + + + + + + + \ No newline at end of file diff --git a/DNS Changer/Dns-Icon.ico b/DNS Changer/Dns-Icon.ico new file mode 100644 index 0000000..e4eeb2f Binary files /dev/null and b/DNS Changer/Dns-Icon.ico differ diff --git a/DNS Changer/Program.cs b/DNS Changer/Program.cs new file mode 100644 index 0000000..c8c8886 --- /dev/null +++ b/DNS Changer/Program.cs @@ -0,0 +1,19 @@ +using System; +using System.Windows.Forms; + +namespace DNS_Changer +{ + internal static class Program + { + /// + /// The main entry point for the application. + /// + [STAThread] + static void Main() + { + Application.EnableVisualStyles(); + Application.SetCompatibleTextRenderingDefault(false); + Application.Run(new DNS_Changer()); + } + } +} diff --git a/DNS Changer/Properties/AssemblyInfo.cs b/DNS Changer/Properties/AssemblyInfo.cs new file mode 100644 index 0000000..b31f04e --- /dev/null +++ b/DNS Changer/Properties/AssemblyInfo.cs @@ -0,0 +1,36 @@ +using System.Reflection; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; + +// General Information about an assembly is controlled through the following +// set of attributes. Change these attribute values to modify the information +// associated with an assembly. +[assembly: AssemblyTitle("DNS Changer")] +[assembly: AssemblyDescription("")] +[assembly: AssemblyConfiguration("")] +[assembly: AssemblyCompany("https://github.com/NeutronO \nAuthor: Alireza Nobakht")] +[assembly: AssemblyProduct("DNS Changer")] +[assembly: AssemblyCopyright("Copyright © 2023")] +[assembly: AssemblyTrademark("Neutron")] +[assembly: AssemblyCulture("")] + +// Setting ComVisible to false makes the types in this assembly not visible +// to COM components. If you need to access a type in this assembly from +// COM, set the ComVisible attribute to true on that type. +[assembly: ComVisible(false)] + +// The following GUID is for the ID of the typelib if this project is exposed to COM +[assembly: Guid("dfb25ec4-9da4-4953-a9f8-79370bd45002")] + +// Version information for an assembly consists of the following four values: +// +// Major Version +// Minor Version +// Build Number +// Revision +// +// You can specify all the values or you can default the Build and Revision Numbers +// by using the '*' as shown below: +// [assembly: AssemblyVersion("1.0.*")] +[assembly: AssemblyVersion("1.0.0.0")] +[assembly: AssemblyFileVersion("1.0.0.0")] diff --git a/DNS Changer/Properties/Resources.Designer.cs b/DNS Changer/Properties/Resources.Designer.cs new file mode 100644 index 0000000..a84a246 --- /dev/null +++ b/DNS Changer/Properties/Resources.Designer.cs @@ -0,0 +1,71 @@ +//------------------------------------------------------------------------------ +// +// This code was generated by a tool. +// Runtime Version:4.0.30319.42000 +// +// Changes to this file may cause incorrect behavior and will be lost if +// the code is regenerated. +// +//------------------------------------------------------------------------------ + +namespace DNS_Changer.Properties +{ + + + /// + /// A strongly-typed resource class, for looking up localized strings, etc. + /// + // This class was auto-generated by the StronglyTypedResourceBuilder + // class via a tool like ResGen or Visual Studio. + // To add or remove a member, edit your .ResX file then rerun ResGen + // with the /str option, or rebuild your VS project. + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "4.0.0.0")] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] + internal class Resources + { + + private static global::System.Resources.ResourceManager resourceMan; + + private static global::System.Globalization.CultureInfo resourceCulture; + + [global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")] + internal Resources() + { + } + + /// + /// Returns the cached ResourceManager instance used by this class. + /// + [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] + internal static global::System.Resources.ResourceManager ResourceManager + { + get + { + if ((resourceMan == null)) + { + global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("DNS_Changer.Properties.Resources", typeof(Resources).Assembly); + resourceMan = temp; + } + return resourceMan; + } + } + + /// + /// Overrides the current thread's CurrentUICulture property for all + /// resource lookups using this strongly typed resource class. + /// + [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] + internal static global::System.Globalization.CultureInfo Culture + { + get + { + return resourceCulture; + } + set + { + resourceCulture = value; + } + } + } +} diff --git a/DNS Changer/Properties/Resources.resx b/DNS Changer/Properties/Resources.resx new file mode 100644 index 0000000..af7dbeb --- /dev/null +++ b/DNS Changer/Properties/Resources.resx @@ -0,0 +1,117 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + \ No newline at end of file diff --git a/DNS Changer/Properties/Settings.Designer.cs b/DNS Changer/Properties/Settings.Designer.cs new file mode 100644 index 0000000..6e51139 --- /dev/null +++ b/DNS Changer/Properties/Settings.Designer.cs @@ -0,0 +1,30 @@ +//------------------------------------------------------------------------------ +// +// This code was generated by a tool. +// Runtime Version:4.0.30319.42000 +// +// Changes to this file may cause incorrect behavior and will be lost if +// the code is regenerated. +// +//------------------------------------------------------------------------------ + +namespace DNS_Changer.Properties +{ + + + [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "11.0.0.0")] + internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase + { + + private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings()))); + + public static Settings Default + { + get + { + return defaultInstance; + } + } + } +} diff --git a/DNS Changer/Properties/Settings.settings b/DNS Changer/Properties/Settings.settings new file mode 100644 index 0000000..3964565 --- /dev/null +++ b/DNS Changer/Properties/Settings.settings @@ -0,0 +1,7 @@ + + + + + + + diff --git a/DNS Changer/obj/Debug/.NETFramework,Version=v4.8.AssemblyAttributes.cs b/DNS Changer/obj/Debug/.NETFramework,Version=v4.8.AssemblyAttributes.cs new file mode 100644 index 0000000..15efebf --- /dev/null +++ b/DNS Changer/obj/Debug/.NETFramework,Version=v4.8.AssemblyAttributes.cs @@ -0,0 +1,4 @@ +// +using System; +using System.Reflection; +[assembly: global::System.Runtime.Versioning.TargetFrameworkAttribute(".NETFramework,Version=v4.8", FrameworkDisplayName = ".NET Framework 4.8")] diff --git a/DNS Changer/obj/Debug/CustomControls.RJControls.CustomTextBox.resources b/DNS Changer/obj/Debug/CustomControls.RJControls.CustomTextBox.resources new file mode 100644 index 0000000..6c05a97 Binary files /dev/null and b/DNS Changer/obj/Debug/CustomControls.RJControls.CustomTextBox.resources differ diff --git a/DNS Changer/obj/Debug/DNS Changer.csproj.AssemblyReference.cache b/DNS Changer/obj/Debug/DNS Changer.csproj.AssemblyReference.cache new file mode 100644 index 0000000..d970690 Binary files /dev/null and b/DNS Changer/obj/Debug/DNS Changer.csproj.AssemblyReference.cache differ diff --git a/DNS Changer/obj/Debug/DNS Changer.csproj.CoreCompileInputs.cache b/DNS Changer/obj/Debug/DNS Changer.csproj.CoreCompileInputs.cache new file mode 100644 index 0000000..90de696 --- /dev/null +++ b/DNS Changer/obj/Debug/DNS Changer.csproj.CoreCompileInputs.cache @@ -0,0 +1 @@ +61ee0ac50b119eecc09318ff0cff10396c6be0c6 diff --git a/DNS Changer/obj/Debug/DNS Changer.csproj.FileListAbsolute.txt b/DNS Changer/obj/Debug/DNS Changer.csproj.FileListAbsolute.txt new file mode 100644 index 0000000..92bc24b --- /dev/null +++ b/DNS Changer/obj/Debug/DNS Changer.csproj.FileListAbsolute.txt @@ -0,0 +1,24 @@ +D:\Projects\C# Projects\DNS Changer\obj\Debug\DNS Changer.csproj.AssemblyReference.cache +D:\Projects\C# Projects\DNS Changer\obj\Debug\DNS Changer.csproj.SuggestedBindingRedirects.cache +D:\Projects\C# Projects\DNS Changer\obj\Debug\DNS_Changer.Properties.Resources.resources +D:\Projects\C# Projects\DNS Changer\obj\Debug\DNS Changer.csproj.GenerateResource.cache +D:\Projects\C# Projects\DNS Changer\obj\Debug\DNS Changer.csproj.CoreCompileInputs.cache +D:\Projects\C# Projects\DNS Changer\bin\Debug\DNS Changer.exe.config +D:\Projects\C# Projects\DNS Changer\bin\Debug\DNS Changer.exe +D:\Projects\C# Projects\DNS Changer\bin\Debug\DNS Changer.pdb +D:\Projects\C# Projects\DNS Changer\obj\Debug\DNS_Changer.DNS_Changer.resources +D:\Projects\C# Projects\DNS Changer\obj\Debug\DNS Changer.exe +D:\Projects\C# Projects\DNS Changer\obj\Debug\DNS Changer.pdb +D:\Projects\C# Projects\DNS Changer\obj\Debug\CustomControls.RJControls.CustomTextBox.resources +C:\Users\Asus\Documents\GitHub\DNS-Changer\DNS Changer\bin\Debug\DNS Changer.exe.config +C:\Users\Asus\Documents\GitHub\DNS-Changer\DNS Changer\bin\Debug\DNS Changer.exe +C:\Users\Asus\Documents\GitHub\DNS-Changer\DNS Changer\bin\Debug\DNS Changer.pdb +C:\Users\Asus\Documents\GitHub\DNS-Changer\DNS Changer\obj\Debug\DNS Changer.csproj.AssemblyReference.cache +C:\Users\Asus\Documents\GitHub\DNS-Changer\DNS Changer\obj\Debug\DNS Changer.csproj.SuggestedBindingRedirects.cache +C:\Users\Asus\Documents\GitHub\DNS-Changer\DNS Changer\obj\Debug\DNS_Changer.DNS_Changer.resources +C:\Users\Asus\Documents\GitHub\DNS-Changer\DNS Changer\obj\Debug\DNS_Changer.Properties.Resources.resources +C:\Users\Asus\Documents\GitHub\DNS-Changer\DNS Changer\obj\Debug\CustomControls.RJControls.CustomTextBox.resources +C:\Users\Asus\Documents\GitHub\DNS-Changer\DNS Changer\obj\Debug\DNS Changer.csproj.GenerateResource.cache +C:\Users\Asus\Documents\GitHub\DNS-Changer\DNS Changer\obj\Debug\DNS Changer.csproj.CoreCompileInputs.cache +C:\Users\Asus\Documents\GitHub\DNS-Changer\DNS Changer\obj\Debug\DNS Changer.exe +C:\Users\Asus\Documents\GitHub\DNS-Changer\DNS Changer\obj\Debug\DNS Changer.pdb diff --git a/DNS Changer/obj/Debug/DNS Changer.csproj.GenerateResource.cache b/DNS Changer/obj/Debug/DNS Changer.csproj.GenerateResource.cache new file mode 100644 index 0000000..b731ba9 Binary files /dev/null and b/DNS Changer/obj/Debug/DNS Changer.csproj.GenerateResource.cache differ diff --git a/DNS Changer/obj/Debug/DNS Changer.csproj.SuggestedBindingRedirects.cache b/DNS Changer/obj/Debug/DNS Changer.csproj.SuggestedBindingRedirects.cache new file mode 100644 index 0000000..e69de29 diff --git a/DNS Changer/obj/Debug/DNS Changer.exe b/DNS Changer/obj/Debug/DNS Changer.exe new file mode 100644 index 0000000..84aec9b Binary files /dev/null and b/DNS Changer/obj/Debug/DNS Changer.exe differ diff --git a/DNS Changer/obj/Debug/DNS Changer.pdb b/DNS Changer/obj/Debug/DNS Changer.pdb new file mode 100644 index 0000000..008a581 Binary files /dev/null and b/DNS Changer/obj/Debug/DNS Changer.pdb differ diff --git a/DNS Changer/obj/Debug/DNS_Changer.DNS_Changer.resources b/DNS Changer/obj/Debug/DNS_Changer.DNS_Changer.resources new file mode 100644 index 0000000..1fda794 Binary files /dev/null and b/DNS Changer/obj/Debug/DNS_Changer.DNS_Changer.resources differ diff --git a/DNS Changer/obj/Debug/DNS_Changer.Properties.Resources.resources b/DNS Changer/obj/Debug/DNS_Changer.Properties.Resources.resources new file mode 100644 index 0000000..6c05a97 Binary files /dev/null and b/DNS Changer/obj/Debug/DNS_Changer.Properties.Resources.resources differ diff --git a/DNS Changer/obj/Debug/DesignTimeResolveAssemblyReferences.cache b/DNS Changer/obj/Debug/DesignTimeResolveAssemblyReferences.cache new file mode 100644 index 0000000..34b36db Binary files /dev/null and b/DNS Changer/obj/Debug/DesignTimeResolveAssemblyReferences.cache differ diff --git a/DNS Changer/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache b/DNS Changer/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache new file mode 100644 index 0000000..e272619 Binary files /dev/null and b/DNS Changer/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache differ