Merge pull request #1 from swagfin/feature/flush-dns-cache

chore: added feature flush dns cache
This commit is contained in:
Wainaina George (Swagfin) 2023-03-04 23:36:17 +03:00 committed by GitHub
commit 5751550e4c
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with 176 additions and 192 deletions

View File

@ -31,18 +31,19 @@
this.components = new System.ComponentModel.Container(); this.components = new System.ComponentModel.Container();
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(PortProxyGUI)); System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(PortProxyGUI));
this.listViewProxies = new System.Windows.Forms.ListView(); this.listViewProxies = new System.Windows.Forms.ListView();
this.columnHeader1 = ((System.Windows.Forms.ColumnHeader)(new System.Windows.Forms.ColumnHeader())); this.columnHeader1 = new System.Windows.Forms.ColumnHeader();
this.columnHeader2 = ((System.Windows.Forms.ColumnHeader)(new System.Windows.Forms.ColumnHeader())); this.columnHeader2 = new System.Windows.Forms.ColumnHeader();
this.columnHeader3 = ((System.Windows.Forms.ColumnHeader)(new System.Windows.Forms.ColumnHeader())); this.columnHeader3 = new System.Windows.Forms.ColumnHeader();
this.columnHeader4 = ((System.Windows.Forms.ColumnHeader)(new System.Windows.Forms.ColumnHeader())); this.columnHeader4 = new System.Windows.Forms.ColumnHeader();
this.columnHeader5 = ((System.Windows.Forms.ColumnHeader)(new System.Windows.Forms.ColumnHeader())); this.columnHeader5 = new System.Windows.Forms.ColumnHeader();
this.columnHeader6 = ((System.Windows.Forms.ColumnHeader)(new System.Windows.Forms.ColumnHeader())); this.columnHeader6 = new System.Windows.Forms.ColumnHeader();
this.columnHeader7 = ((System.Windows.Forms.ColumnHeader)(new System.Windows.Forms.ColumnHeader())); this.columnHeader7 = new System.Windows.Forms.ColumnHeader();
this.contextMenuStrip1 = new System.Windows.Forms.ContextMenuStrip(this.components); this.contextMenuStrip1 = new System.Windows.Forms.ContextMenuStrip(this.components);
this.toolStripMenuItem_Enable = new System.Windows.Forms.ToolStripMenuItem(); this.toolStripMenuItem_Enable = new System.Windows.Forms.ToolStripMenuItem();
this.toolStripMenuItem_Disable = new System.Windows.Forms.ToolStripMenuItem(); this.toolStripMenuItem_Disable = new System.Windows.Forms.ToolStripMenuItem();
this.toolStripSeparator3 = new System.Windows.Forms.ToolStripSeparator(); this.toolStripSeparator3 = new System.Windows.Forms.ToolStripSeparator();
this.toolStripMenuItem_Refresh = new System.Windows.Forms.ToolStripMenuItem(); this.toolStripMenuItem_Refresh = new System.Windows.Forms.ToolStripMenuItem();
this.toolStripMenuItem_FlushDnsCache = new System.Windows.Forms.ToolStripMenuItem();
this.toolStripSeparator2 = new System.Windows.Forms.ToolStripSeparator(); this.toolStripSeparator2 = new System.Windows.Forms.ToolStripSeparator();
this.toolStripMenuItem_New = new System.Windows.Forms.ToolStripMenuItem(); this.toolStripMenuItem_New = new System.Windows.Forms.ToolStripMenuItem();
this.toolStripMenuItem_Modify = new System.Windows.Forms.ToolStripMenuItem(); this.toolStripMenuItem_Modify = new System.Windows.Forms.ToolStripMenuItem();
@ -114,6 +115,7 @@
this.toolStripMenuItem_Disable, this.toolStripMenuItem_Disable,
this.toolStripSeparator3, this.toolStripSeparator3,
this.toolStripMenuItem_Refresh, this.toolStripMenuItem_Refresh,
this.toolStripMenuItem_FlushDnsCache,
this.toolStripSeparator2, this.toolStripSeparator2,
this.toolStripMenuItem_New, this.toolStripMenuItem_New,
this.toolStripMenuItem_Modify, this.toolStripMenuItem_Modify,
@ -144,6 +146,11 @@
this.toolStripMenuItem_Refresh.Name = "toolStripMenuItem_Refresh"; this.toolStripMenuItem_Refresh.Name = "toolStripMenuItem_Refresh";
resources.ApplyResources(this.toolStripMenuItem_Refresh, "toolStripMenuItem_Refresh"); resources.ApplyResources(this.toolStripMenuItem_Refresh, "toolStripMenuItem_Refresh");
// //
// toolStripMenuItem_FlushDnsCache
//
this.toolStripMenuItem_FlushDnsCache.Name = "toolStripMenuItem_FlushDnsCache";
resources.ApplyResources(this.toolStripMenuItem_FlushDnsCache, "toolStripMenuItem_FlushDnsCache");
//
// toolStripSeparator2 // toolStripSeparator2
// //
this.toolStripSeparator2.Name = "toolStripSeparator2"; this.toolStripSeparator2.Name = "toolStripSeparator2";
@ -176,6 +183,7 @@
// //
// imageListProxies // imageListProxies
// //
this.imageListProxies.ColorDepth = System.Windows.Forms.ColorDepth.Depth8Bit;
this.imageListProxies.ImageStream = ((System.Windows.Forms.ImageListStreamer)(resources.GetObject("imageListProxies.ImageStream"))); this.imageListProxies.ImageStream = ((System.Windows.Forms.ImageListStreamer)(resources.GetObject("imageListProxies.ImageStream")));
this.imageListProxies.TransparentColor = System.Drawing.Color.Transparent; this.imageListProxies.TransparentColor = System.Drawing.Color.Transparent;
this.imageListProxies.Images.SetKeyName(0, "disable.png"); this.imageListProxies.Images.SetKeyName(0, "disable.png");
@ -215,6 +223,7 @@
private System.Windows.Forms.ToolStripSeparator toolStripSeparator3; private System.Windows.Forms.ToolStripSeparator toolStripSeparator3;
private System.Windows.Forms.ColumnHeader columnHeader7; private System.Windows.Forms.ColumnHeader columnHeader7;
internal System.Windows.Forms.ListView listViewProxies; internal System.Windows.Forms.ListView listViewProxies;
private System.Windows.Forms.ToolStripMenuItem toolStripMenuItem_FlushDnsCache;
} }
} }

View File

@ -1,7 +1,6 @@
using NStandard; using NStandard;
using System; using System;
using System.Data; using System.Data;
using System.Drawing;
using System.Linq; using System.Linq;
using System.Windows.Forms; using System.Windows.Forms;
using static System.Windows.Forms.ListViewItem; using static System.Windows.Forms.ListViewItem;
@ -197,6 +196,20 @@ namespace PortProxyGUI
InitProxyItems(rules, proxies); InitProxyItems(rules, proxies);
} }
public void FlushDnsCache()
{
try
{
CmdUtil.FlushDNSCache();
RefreshProxyList();
}
catch (NotSupportedException ex)
{
MessageBox.Show(ex.Message, "Exclamation", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
return;
}
}
private void contextMenuStrip1_MouseClick(object sender, MouseEventArgs e) private void contextMenuStrip1_MouseClick(object sender, MouseEventArgs e)
{ {
if (sender is ContextMenuStrip _sender) if (sender is ContextMenuStrip _sender)
@ -224,6 +237,9 @@ namespace PortProxyGUI
case ToolStripMenuItem item when item == toolStripMenuItem_Refresh: case ToolStripMenuItem item when item == toolStripMenuItem_Refresh:
RefreshProxyList(); RefreshProxyList();
break; break;
case ToolStripMenuItem item when item == toolStripMenuItem_FlushDnsCache:
FlushDnsCache();
break;
case ToolStripMenuItem item when item == toolStripMenuItem_Delete: DeleteSelectedProxies(); break; case ToolStripMenuItem item when item == toolStripMenuItem_Delete: DeleteSelectedProxies(); break;

View File

@ -1,64 +1,4 @@
<?xml version="1.0" encoding="utf-8"?> <root>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata"> <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" /> <xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true"> <xsd:element name="root" msdata:IsDataSet="true">
@ -120,7 +60,7 @@
<data name="columnHeader1.Text" xml:space="preserve"> <data name="columnHeader1.Text" xml:space="preserve">
<value /> <value />
</data> </data>
<assembly alias="mscorlib" name="mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" /> <assembly alias="mscorlib" name="mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<data name="columnHeader1.Width" type="System.Int32, mscorlib"> <data name="columnHeader1.Width" type="System.Int32, mscorlib">
<value>24</value> <value>24</value>
</data> </data>
@ -160,20 +100,80 @@
<data name="columnHeader7.Width" type="System.Int32, mscorlib"> <data name="columnHeader7.Width" type="System.Int32, mscorlib">
<value>104</value> <value>104</value>
</data> </data>
<metadata name="contextMenuStrip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"> <metadata name="contextMenuStrip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>17, 17</value> <value>17, 17</value>
</metadata> </metadata>
<assembly alias="System.Drawing" name="System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" /> <assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<data name="toolStripMenuItem_Enable.Size" type="System.Drawing.Size, System.Drawing">
<value>180, 22</value>
</data>
<data name="toolStripMenuItem_Enable.Text" xml:space="preserve">
<value>Enable (&amp;E)</value>
</data>
<data name="toolStripMenuItem_Disable.Size" type="System.Drawing.Size, System.Drawing">
<value>180, 22</value>
</data>
<data name="toolStripMenuItem_Disable.Text" xml:space="preserve">
<value>Disable (&amp;I)</value>
</data>
<data name="toolStripSeparator3.Size" type="System.Drawing.Size, System.Drawing">
<value>177, 6</value>
</data>
<data name="toolStripMenuItem_Refresh.Size" type="System.Drawing.Size, System.Drawing">
<value>180, 22</value>
</data>
<data name="toolStripMenuItem_Refresh.Text" xml:space="preserve">
<value>Refresh (&amp;F)</value>
</data>
<data name="toolStripMenuItem_FlushDnsCache.Size" type="System.Drawing.Size, System.Drawing">
<value>180, 22</value>
</data>
<data name="toolStripMenuItem_FlushDnsCache.Text" xml:space="preserve">
<value>Flush DNS Cache</value>
</data>
<data name="toolStripMenuItem_FlushDnsCache.ToolTipText" xml:space="preserve">
<value>Will perform ipconfig/flushDNS</value>
</data>
<data name="toolStripSeparator2.Size" type="System.Drawing.Size, System.Drawing">
<value>177, 6</value>
</data>
<data name="toolStripMenuItem_New.Size" type="System.Drawing.Size, System.Drawing">
<value>180, 22</value>
</data>
<data name="toolStripMenuItem_New.Text" xml:space="preserve">
<value>New (&amp;N) ...</value>
</data>
<data name="toolStripMenuItem_Modify.Size" type="System.Drawing.Size, System.Drawing">
<value>180, 22</value>
</data>
<data name="toolStripMenuItem_Modify.Text" xml:space="preserve">
<value>Modify (&amp;M) ...</value>
</data>
<data name="toolStripMenuItem_Delete.Size" type="System.Drawing.Size, System.Drawing">
<value>180, 22</value>
</data>
<data name="toolStripMenuItem_Delete.Text" xml:space="preserve">
<value>Delete (&amp;D)</value>
</data>
<data name="toolStripSeparator1.Size" type="System.Drawing.Size, System.Drawing">
<value>177, 6</value>
</data>
<data name="toolStripMenuItem_About.Size" type="System.Drawing.Size, System.Drawing">
<value>180, 22</value>
</data>
<data name="toolStripMenuItem_About.Text" xml:space="preserve">
<value>About</value>
</data>
<data name="contextMenuStrip1.Size" type="System.Drawing.Size, System.Drawing"> <data name="contextMenuStrip1.Size" type="System.Drawing.Size, System.Drawing">
<value>155, 176</value> <value>181, 220</value>
</data> </data>
<data name="&gt;&gt;contextMenuStrip1.Name" xml:space="preserve"> <data name="&gt;&gt;contextMenuStrip1.Name" xml:space="preserve">
<value>contextMenuStrip1</value> <value>contextMenuStrip1</value>
</data> </data>
<data name="&gt;&gt;contextMenuStrip1.Type" xml:space="preserve"> <data name="&gt;&gt;contextMenuStrip1.Type" xml:space="preserve">
<value>System.Windows.Forms.ContextMenuStrip, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> <value>System.Windows.Forms.ContextMenuStrip, System.Windows.Forms, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data> </data>
<assembly alias="System.Windows.Forms" name="System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" /> <assembly alias="System.Windows.Forms" name="System.Windows.Forms, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<data name="listViewProxies.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms"> <data name="listViewProxies.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
<value>Fill</value> <value>Fill</value>
</data> </data>
@ -187,54 +187,54 @@
<value>4, 3, 4, 3</value> <value>4, 3, 4, 3</value>
</data> </data>
<data name="listViewProxies.Size" type="System.Drawing.Size, System.Drawing"> <data name="listViewProxies.Size" type="System.Drawing.Size, System.Drawing">
<value>704, 421</value> <value>704, 456</value>
</data> </data>
<metadata name="imageListProxies.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"> <metadata name="imageListProxies.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>182, 17</value> <value>182, 17</value>
</metadata> </metadata>
<data name="imageListProxies.ImageStream" mimetype="application/x-microsoft.net.object.binary.base64"> <data name="imageListProxies.ImageStream" mimetype="application/x-microsoft.net.object.binary.base64">
<value> <value>
AAEAAAD/////AQAAAAAAAAAMAgAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj0yLjAuMC4w AAEAAAD/////AQAAAAAAAAAMAgAAAEZTeXN0ZW0uV2luZG93cy5Gb3JtcywgQ3VsdHVyZT1uZXV0cmFs
LCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACZTeXN0 LCBQdWJsaWNLZXlUb2tlbj1iNzdhNWM1NjE5MzRlMDg5BQEAAAAmU3lzdGVtLldpbmRvd3MuRm9ybXMu
ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAADc SW1hZ2VMaXN0U3RyZWFtZXIBAAAABERhdGEHAgIAAAAJAwAAAA8DAAAA3AgAAAJNU0Z0AUkBTAIBAQIB
CAAAAk1TRnQBSQFMAgEBAgEAASABAQEgAQEBEAEAARABAAT/AQkBAAj/AUIBTQE2AQQGAAE2AQQCAAEo AAEwAQEBMAEBARABAAEQAQAE/wEJAQAI/wFCAU0BNgEEBgABNgEEAgABKAMAAUADAAEQAwABAQEAAQgG
AwABQAMAARADAAEBAQABCAYAAQQYAAGAAgABgAMAAoABAAGAAwABgAEAAYABAAKAAgADwAEAAcAB3AHA AAEEGAABgAIAAYADAAKAAQABgAMAAYABAAGAAQACgAIAA8ABAAHAAdwBwAEAAfABygGmAQABMwUAATMB
AQAB8AHKAaYBAAEzBQABMwEAATMBAAEzAQACMwIAAxYBAAMcAQADIgEAAykBAANVAQADTQEAA0IBAAM5 AAEzAQABMwEAAjMCAAMWAQADHAEAAyIBAAMpAQADVQEAA00BAANCAQADOQEAAYABfAH/AQACUAH/AQAB
AQABgAF8Af8BAAJQAf8BAAGTAQAB1gEAAf8B7AHMAQABxgHWAe8BAAHWAucBAAGQAakBrQIAAf8BMwMA kwEAAdYBAAH/AewBzAEAAcYB1gHvAQAB1gLnAQABkAGpAa0CAAH/ATMDAAFmAwABmQMAAcwCAAEzAwAC
AWYDAAGZAwABzAIAATMDAAIzAgABMwFmAgABMwGZAgABMwHMAgABMwH/AgABZgMAAWYBMwIAAmYCAAFm MwIAATMBZgIAATMBmQIAATMBzAIAATMB/wIAAWYDAAFmATMCAAJmAgABZgGZAgABZgHMAgABZgH/AgAB
AZkCAAFmAcwCAAFmAf8CAAGZAwABmQEzAgABmQFmAgACmQIAAZkBzAIAAZkB/wIAAcwDAAHMATMCAAHM mQMAAZkBMwIAAZkBZgIAApkCAAGZAcwCAAGZAf8CAAHMAwABzAEzAgABzAFmAgABzAGZAgACzAIAAcwB
AWYCAAHMAZkCAALMAgABzAH/AgAB/wFmAgAB/wGZAgAB/wHMAQABMwH/AgAB/wEAATMBAAEzAQABZgEA /wIAAf8BZgIAAf8BmQIAAf8BzAEAATMB/wIAAf8BAAEzAQABMwEAAWYBAAEzAQABmQEAATMBAAHMAQAB
ATMBAAGZAQABMwEAAcwBAAEzAQAB/wEAAf8BMwIAAzMBAAIzAWYBAAIzAZkBAAIzAcwBAAIzAf8BAAEz MwEAAf8BAAH/ATMCAAMzAQACMwFmAQACMwGZAQACMwHMAQACMwH/AQABMwFmAgABMwFmATMBAAEzAmYB
AWYCAAEzAWYBMwEAATMCZgEAATMBZgGZAQABMwFmAcwBAAEzAWYB/wEAATMBmQIAATMBmQEzAQABMwGZ AAEzAWYBmQEAATMBZgHMAQABMwFmAf8BAAEzAZkCAAEzAZkBMwEAATMBmQFmAQABMwKZAQABMwGZAcwB
AWYBAAEzApkBAAEzAZkBzAEAATMBmQH/AQABMwHMAgABMwHMATMBAAEzAcwBZgEAATMBzAGZAQABMwLM AAEzAZkB/wEAATMBzAIAATMBzAEzAQABMwHMAWYBAAEzAcwBmQEAATMCzAEAATMBzAH/AQABMwH/ATMB
AQABMwHMAf8BAAEzAf8BMwEAATMB/wFmAQABMwH/AZkBAAEzAf8BzAEAATMC/wEAAWYDAAFmAQABMwEA AAEzAf8BZgEAATMB/wGZAQABMwH/AcwBAAEzAv8BAAFmAwABZgEAATMBAAFmAQABZgEAAWYBAAGZAQAB
AWYBAAFmAQABZgEAAZkBAAFmAQABzAEAAWYBAAH/AQABZgEzAgABZgIzAQABZgEzAWYBAAFmATMBmQEA ZgEAAcwBAAFmAQAB/wEAAWYBMwIAAWYCMwEAAWYBMwFmAQABZgEzAZkBAAFmATMBzAEAAWYBMwH/AQAC
AWYBMwHMAQABZgEzAf8BAAJmAgACZgEzAQADZgEAAmYBmQEAAmYBzAEAAWYBmQIAAWYBmQEzAQABZgGZ ZgIAAmYBMwEAA2YBAAJmAZkBAAJmAcwBAAFmAZkCAAFmAZkBMwEAAWYBmQFmAQABZgKZAQABZgGZAcwB
AWYBAAFmApkBAAFmAZkBzAEAAWYBmQH/AQABZgHMAgABZgHMATMBAAFmAcwBmQEAAWYCzAEAAWYBzAH/ AAFmAZkB/wEAAWYBzAIAAWYBzAEzAQABZgHMAZkBAAFmAswBAAFmAcwB/wEAAWYB/wIAAWYB/wEzAQAB
AQABZgH/AgABZgH/ATMBAAFmAf8BmQEAAWYB/wHMAQABzAEAAf8BAAH/AQABzAEAApkCAAGZATMBmQEA ZgH/AZkBAAFmAf8BzAEAAcwBAAH/AQAB/wEAAcwBAAKZAgABmQEzAZkBAAGZAQABmQEAAZkBAAHMAQAB
AZkBAAGZAQABmQEAAcwBAAGZAwABmQIzAQABmQEAAWYBAAGZATMBzAEAAZkBAAH/AQABmQFmAgABmQFm mQMAAZkCMwEAAZkBAAFmAQABmQEzAcwBAAGZAQAB/wEAAZkBZgIAAZkBZgEzAQABmQEzAWYBAAGZAWYB
ATMBAAGZATMBZgEAAZkBZgGZAQABmQFmAcwBAAGZATMB/wEAApkBMwEAApkBZgEAA5kBAAKZAcwBAAKZ mQEAAZkBZgHMAQABmQEzAf8BAAKZATMBAAKZAWYBAAOZAQACmQHMAQACmQH/AQABmQHMAgABmQHMATMB
Af8BAAGZAcwCAAGZAcwBMwEAAWYBzAFmAQABmQHMAZkBAAGZAswBAAGZAcwB/wEAAZkB/wIAAZkB/wEz AAFmAcwBZgEAAZkBzAGZAQABmQLMAQABmQHMAf8BAAGZAf8CAAGZAf8BMwEAAZkBzAFmAQABmQH/AZkB
AQABmQHMAWYBAAGZAf8BmQEAAZkB/wHMAQABmQL/AQABzAMAAZkBAAEzAQABzAEAAWYBAAHMAQABmQEA AAGZAf8BzAEAAZkC/wEAAcwDAAGZAQABMwEAAcwBAAFmAQABzAEAAZkBAAHMAQABzAEAAZkBMwIAAcwC
AcwBAAHMAQABmQEzAgABzAIzAQABzAEzAWYBAAHMATMBmQEAAcwBMwHMAQABzAEzAf8BAAHMAWYCAAHM MwEAAcwBMwFmAQABzAEzAZkBAAHMATMBzAEAAcwBMwH/AQABzAFmAgABzAFmATMBAAGZAmYBAAHMAWYB
AWYBMwEAAZkCZgEAAcwBZgGZAQABzAFmAcwBAAGZAWYB/wEAAcwBmQIAAcwBmQEzAQABzAGZAWYBAAHM mQEAAcwBZgHMAQABmQFmAf8BAAHMAZkCAAHMAZkBMwEAAcwBmQFmAQABzAKZAQABzAGZAcwBAAHMAZkB
ApkBAAHMAZkBzAEAAcwBmQH/AQACzAIAAswBMwEAAswBZgEAAswBmQEAA8wBAALMAf8BAAHMAf8CAAHM /wEAAswCAALMATMBAALMAWYBAALMAZkBAAPMAQACzAH/AQABzAH/AgABzAH/ATMBAAGZAf8BZgEAAcwB
Af8BMwEAAZkB/wFmAQABzAH/AZkBAAHMAf8BzAEAAcwC/wEAAcwBAAEzAQAB/wEAAWYBAAH/AQABmQEA /wGZAQABzAH/AcwBAAHMAv8BAAHMAQABMwEAAf8BAAFmAQAB/wEAAZkBAAHMATMCAAH/AjMBAAH/ATMB
AcwBMwIAAf8CMwEAAf8BMwFmAQAB/wEzAZkBAAH/ATMBzAEAAf8BMwH/AQAB/wFmAgAB/wFmATMBAAHM ZgEAAf8BMwGZAQAB/wEzAcwBAAH/ATMB/wEAAf8BZgIAAf8BZgEzAQABzAJmAQAB/wFmAZkBAAH/AWYB
AmYBAAH/AWYBmQEAAf8BZgHMAQABzAFmAf8BAAH/AZkCAAH/AZkBMwEAAf8BmQFmAQAB/wKZAQAB/wGZ zAEAAcwBZgH/AQAB/wGZAgAB/wGZATMBAAH/AZkBZgEAAf8CmQEAAf8BmQHMAQAB/wGZAf8BAAH/AcwC
AcwBAAH/AZkB/wEAAf8BzAIAAf8BzAEzAQAB/wHMAWYBAAH/AcwBmQEAAf8CzAEAAf8BzAH/AQAC/wEz AAH/AcwBMwEAAf8BzAFmAQAB/wHMAZkBAAH/AswBAAH/AcwB/wEAAv8BMwEAAcwB/wFmAQAC/wGZAQAC
AQABzAH/AWYBAAL/AZkBAAL/AcwBAAJmAf8BAAFmAf8BZgEAAWYC/wEAAf8CZgEAAf8BZgH/AQAC/wFm /wHMAQACZgH/AQABZgH/AWYBAAFmAv8BAAH/AmYBAAH/AWYB/wEAAv8BZgEAASEBAAGlAQADXwEAA3cB
AQABIQEAAaUBAANfAQADdwEAA4YBAAOWAQADywEAA7IBAAPXAQAD3QEAA+MBAAPqAQAD8QEAA/gBAAHw AAOGAQADlgEAA8sBAAOyAQAD1wEAA90BAAPjAQAD6gEAA/EBAAP4AQAB8AH7Af8BAAGkAqABAAOAAwAB
AfsB/wEAAaQCoAEAA4ADAAH/AgAB/wMAAv8BAAH/AwAB/wEAAf8BAAL/AgAD/wQACvQ0AAH/AZQKFwGU /wIAAf8DAAL/AQAB/wMAAf8BAAH/AQAC/wIAA/8EAAr0NAAB/wGUChcBlAH/AgAB/wG6CpUBugH/IgAB
Af8CAAH/AboKlQG6Af8iAAGUDBcBlAIAAboMlQG6IgAOFwIADpUiAAQXARYB9AL/AfQBFgQXAgAOlSIA lAwXAZQCAAG6DJUBuiIADhcCAA6VIgAEFwEWAfQC/wH0ARYEFwIADpUiAAMXARYB/wG9ARYBlAH0Af8B
AxcBFgH/Ab0BFgGUAfQB/wEWAxcCAAWVArsHlSIAAxcB9AG9AhcBlAH/AvQDFwIABJUBugL/AcEGlSIA FgMXAgAFlQK7B5UiAAMXAfQBvQIXAZQB/wL0AxcCAASVAboC/wHBBpUiAAMXAf8BFgEXAZQB/wKUAf8D
AxcB/wEWARcBlAH/ApQB/wMXAgADlQG6Af8BwQG6Af8BwQWVIgADFwH/ApQB/wGUARcBFgH/AxcCAAOV FwIAA5UBugH/AcEBugH/AcEFlSIAAxcB/wKUAf8BlAEXARYB/wMXAgADlQH/AcEClQG6Af8BwQSVIgAD
Af8BwQKVAboB/wHBBJUiAAMXAvQB/wGUAhcBvQH0AxcCAAiVAboB/wHBA5UiAAMXARYB/wH0AZQBFgG9 FwL0Af8BlAIXAb0B9AMXAgAIlQG6Af8BwQOVIgADFwEWAf8B9AGUARYBvQH/ARYDFwIACZUBugH/A5Ui
Af8BFgMXAgAJlQG6Af8DlSIABBcBFgH0Av8B9AEWBBcB/wEADpUB/yEADhcB/wEADpUB/yEAAZQMFwGU AAQXARYB9AL/AfQBFgQXAf8BAA6VAf8hAA4XAf8BAA6VAf8hAAGUDBcBlAIAAboMlQG6IgAB/wGUChcB
AgABugyVAboiAAH/AZQKFwGUAf8CAAH/AboKlQG6Af80AAH/CPQkAAFCAU0BPgcAAT4DAAEoAwABQAMA lAH/AgAB/wG6CpUBugH/NAAB/wj0JAABQgFNAT4HAAE+AwABKAMAAUADAAEQAwABAQEAAQEFAAGAFwAD
ARADAAEBAQABAQUAAYAXAAP/AQAB4AEHAv8EAAGAAQEBgAEBBAABgAEBAYABAQQAAYABAQGAAQEEAAGA /wEAAeABBwL/BAABgAEBAYABAQQAAYABAQGAAQEEAAGAAQEBgAEBBAABgAEBAYABAQQAAYABAQGAAQEE
AQEBgAEBBAABgAEBAYABAQQAAYABAQGAAQEEAAGAAQEBgAEBBAABgAEBAYABAQQAAYABAQGAAQEEAAGA AAGAAQEBgAEBBAABgAEBAYABAQQAAYABAQGAAQEEAAGAAQEBgAEBBAABgAEBAYABAQQAAYABAAGABQAB
AQEBgAEBBAABgAEAAYAFAAGAAQABgAUAAYABAQGAAQEEAAGAAQEBgAEBBAAC/wHgAQ8EAAs= gAEAAYAFAAGAAQEBgAEBBAABgAEBAYABAQQAAv8B4AEPBAAL
</value> </value>
</data> </data>
<data name="listViewProxies.TabIndex" type="System.Int32, mscorlib"> <data name="listViewProxies.TabIndex" type="System.Int32, mscorlib">
@ -244,7 +244,7 @@
<value>listViewProxies</value> <value>listViewProxies</value>
</data> </data>
<data name="&gt;&gt;listViewProxies.Type" xml:space="preserve"> <data name="&gt;&gt;listViewProxies.Type" xml:space="preserve">
<value>System.Windows.Forms.ListView, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> <value>System.Windows.Forms.ListView, System.Windows.Forms, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data> </data>
<data name="&gt;&gt;listViewProxies.Parent" xml:space="preserve"> <data name="&gt;&gt;listViewProxies.Parent" xml:space="preserve">
<value>$this</value> <value>$this</value>
@ -252,65 +252,14 @@
<data name="&gt;&gt;listViewProxies.ZOrder" xml:space="preserve"> <data name="&gt;&gt;listViewProxies.ZOrder" xml:space="preserve">
<value>1</value> <value>1</value>
</data> </data>
<data name="toolStripMenuItem_Enable.Size" type="System.Drawing.Size, System.Drawing"> <metadata name="$this.Localizable" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>154, 22</value>
</data>
<data name="toolStripMenuItem_Enable.Text" xml:space="preserve">
<value>Enable (&amp;E)</value>
</data>
<data name="toolStripMenuItem_Disable.Size" type="System.Drawing.Size, System.Drawing">
<value>154, 22</value>
</data>
<data name="toolStripMenuItem_Disable.Text" xml:space="preserve">
<value>Disable (&amp;I)</value>
</data>
<data name="toolStripSeparator3.Size" type="System.Drawing.Size, System.Drawing">
<value>151, 6</value>
</data>
<data name="toolStripMenuItem_Refresh.Size" type="System.Drawing.Size, System.Drawing">
<value>154, 22</value>
</data>
<data name="toolStripMenuItem_Refresh.Text" xml:space="preserve">
<value>Refresh (&amp;F)</value>
</data>
<data name="toolStripSeparator2.Size" type="System.Drawing.Size, System.Drawing">
<value>151, 6</value>
</data>
<data name="toolStripMenuItem_New.Size" type="System.Drawing.Size, System.Drawing">
<value>154, 22</value>
</data>
<data name="toolStripMenuItem_New.Text" xml:space="preserve">
<value>New (&amp;N) ...</value>
</data>
<data name="toolStripMenuItem_Modify.Size" type="System.Drawing.Size, System.Drawing">
<value>154, 22</value>
</data>
<data name="toolStripMenuItem_Modify.Text" xml:space="preserve">
<value>Modify (&amp;M) ...</value>
</data>
<data name="toolStripMenuItem_Delete.Size" type="System.Drawing.Size, System.Drawing">
<value>154, 22</value>
</data>
<data name="toolStripMenuItem_Delete.Text" xml:space="preserve">
<value>Delete (&amp;D)</value>
</data>
<data name="toolStripSeparator1.Size" type="System.Drawing.Size, System.Drawing">
<value>151, 6</value>
</data>
<data name="toolStripMenuItem_About.Size" type="System.Drawing.Size, System.Drawing">
<value>154, 22</value>
</data>
<data name="toolStripMenuItem_About.Text" xml:space="preserve">
<value>About</value>
</data>
<metadata name="$this.Localizable" type="System.Boolean, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value> <value>True</value>
</metadata> </metadata>
<data name="$this.AutoScaleDimensions" type="System.Drawing.SizeF, System.Drawing"> <data name="$this.AutoScaleDimensions" type="System.Drawing.SizeF, System.Drawing">
<value>6, 12</value> <value>6, 13</value>
</data> </data>
<data name="$this.ClientSize" type="System.Drawing.Size, System.Drawing"> <data name="$this.ClientSize" type="System.Drawing.Size, System.Drawing">
<value>704, 421</value> <value>704, 456</value>
</data> </data>
<data name="$this.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64"> <data name="$this.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value> <value>
@ -2483,114 +2432,120 @@
<value>columnHeader1</value> <value>columnHeader1</value>
</data> </data>
<data name="&gt;&gt;columnHeader1.Type" xml:space="preserve"> <data name="&gt;&gt;columnHeader1.Type" xml:space="preserve">
<value>System.Windows.Forms.ColumnHeader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> <value>System.Windows.Forms.ColumnHeader, System.Windows.Forms, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data> </data>
<data name="&gt;&gt;columnHeader2.Name" xml:space="preserve"> <data name="&gt;&gt;columnHeader2.Name" xml:space="preserve">
<value>columnHeader2</value> <value>columnHeader2</value>
</data> </data>
<data name="&gt;&gt;columnHeader2.Type" xml:space="preserve"> <data name="&gt;&gt;columnHeader2.Type" xml:space="preserve">
<value>System.Windows.Forms.ColumnHeader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> <value>System.Windows.Forms.ColumnHeader, System.Windows.Forms, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data> </data>
<data name="&gt;&gt;columnHeader3.Name" xml:space="preserve"> <data name="&gt;&gt;columnHeader3.Name" xml:space="preserve">
<value>columnHeader3</value> <value>columnHeader3</value>
</data> </data>
<data name="&gt;&gt;columnHeader3.Type" xml:space="preserve"> <data name="&gt;&gt;columnHeader3.Type" xml:space="preserve">
<value>System.Windows.Forms.ColumnHeader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> <value>System.Windows.Forms.ColumnHeader, System.Windows.Forms, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data> </data>
<data name="&gt;&gt;columnHeader4.Name" xml:space="preserve"> <data name="&gt;&gt;columnHeader4.Name" xml:space="preserve">
<value>columnHeader4</value> <value>columnHeader4</value>
</data> </data>
<data name="&gt;&gt;columnHeader4.Type" xml:space="preserve"> <data name="&gt;&gt;columnHeader4.Type" xml:space="preserve">
<value>System.Windows.Forms.ColumnHeader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> <value>System.Windows.Forms.ColumnHeader, System.Windows.Forms, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data> </data>
<data name="&gt;&gt;columnHeader5.Name" xml:space="preserve"> <data name="&gt;&gt;columnHeader5.Name" xml:space="preserve">
<value>columnHeader5</value> <value>columnHeader5</value>
</data> </data>
<data name="&gt;&gt;columnHeader5.Type" xml:space="preserve"> <data name="&gt;&gt;columnHeader5.Type" xml:space="preserve">
<value>System.Windows.Forms.ColumnHeader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> <value>System.Windows.Forms.ColumnHeader, System.Windows.Forms, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data> </data>
<data name="&gt;&gt;columnHeader6.Name" xml:space="preserve"> <data name="&gt;&gt;columnHeader6.Name" xml:space="preserve">
<value>columnHeader6</value> <value>columnHeader6</value>
</data> </data>
<data name="&gt;&gt;columnHeader6.Type" xml:space="preserve"> <data name="&gt;&gt;columnHeader6.Type" xml:space="preserve">
<value>System.Windows.Forms.ColumnHeader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> <value>System.Windows.Forms.ColumnHeader, System.Windows.Forms, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data> </data>
<data name="&gt;&gt;columnHeader7.Name" xml:space="preserve"> <data name="&gt;&gt;columnHeader7.Name" xml:space="preserve">
<value>columnHeader7</value> <value>columnHeader7</value>
</data> </data>
<data name="&gt;&gt;columnHeader7.Type" xml:space="preserve"> <data name="&gt;&gt;columnHeader7.Type" xml:space="preserve">
<value>System.Windows.Forms.ColumnHeader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> <value>System.Windows.Forms.ColumnHeader, System.Windows.Forms, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data> </data>
<data name="&gt;&gt;toolStripMenuItem_Enable.Name" xml:space="preserve"> <data name="&gt;&gt;toolStripMenuItem_Enable.Name" xml:space="preserve">
<value>toolStripMenuItem_Enable</value> <value>toolStripMenuItem_Enable</value>
</data> </data>
<data name="&gt;&gt;toolStripMenuItem_Enable.Type" xml:space="preserve"> <data name="&gt;&gt;toolStripMenuItem_Enable.Type" xml:space="preserve">
<value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data> </data>
<data name="&gt;&gt;toolStripMenuItem_Disable.Name" xml:space="preserve"> <data name="&gt;&gt;toolStripMenuItem_Disable.Name" xml:space="preserve">
<value>toolStripMenuItem_Disable</value> <value>toolStripMenuItem_Disable</value>
</data> </data>
<data name="&gt;&gt;toolStripMenuItem_Disable.Type" xml:space="preserve"> <data name="&gt;&gt;toolStripMenuItem_Disable.Type" xml:space="preserve">
<value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data> </data>
<data name="&gt;&gt;toolStripSeparator3.Name" xml:space="preserve"> <data name="&gt;&gt;toolStripSeparator3.Name" xml:space="preserve">
<value>toolStripSeparator3</value> <value>toolStripSeparator3</value>
</data> </data>
<data name="&gt;&gt;toolStripSeparator3.Type" xml:space="preserve"> <data name="&gt;&gt;toolStripSeparator3.Type" xml:space="preserve">
<value>System.Windows.Forms.ToolStripSeparator, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> <value>System.Windows.Forms.ToolStripSeparator, System.Windows.Forms, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data> </data>
<data name="&gt;&gt;toolStripMenuItem_Refresh.Name" xml:space="preserve"> <data name="&gt;&gt;toolStripMenuItem_Refresh.Name" xml:space="preserve">
<value>toolStripMenuItem_Refresh</value> <value>toolStripMenuItem_Refresh</value>
</data> </data>
<data name="&gt;&gt;toolStripMenuItem_Refresh.Type" xml:space="preserve"> <data name="&gt;&gt;toolStripMenuItem_Refresh.Type" xml:space="preserve">
<value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;toolStripMenuItem_FlushDnsCache.Name" xml:space="preserve">
<value>toolStripMenuItem_FlushDnsCache</value>
</data>
<data name="&gt;&gt;toolStripMenuItem_FlushDnsCache.Type" xml:space="preserve">
<value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data> </data>
<data name="&gt;&gt;toolStripSeparator2.Name" xml:space="preserve"> <data name="&gt;&gt;toolStripSeparator2.Name" xml:space="preserve">
<value>toolStripSeparator2</value> <value>toolStripSeparator2</value>
</data> </data>
<data name="&gt;&gt;toolStripSeparator2.Type" xml:space="preserve"> <data name="&gt;&gt;toolStripSeparator2.Type" xml:space="preserve">
<value>System.Windows.Forms.ToolStripSeparator, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> <value>System.Windows.Forms.ToolStripSeparator, System.Windows.Forms, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data> </data>
<data name="&gt;&gt;toolStripMenuItem_New.Name" xml:space="preserve"> <data name="&gt;&gt;toolStripMenuItem_New.Name" xml:space="preserve">
<value>toolStripMenuItem_New</value> <value>toolStripMenuItem_New</value>
</data> </data>
<data name="&gt;&gt;toolStripMenuItem_New.Type" xml:space="preserve"> <data name="&gt;&gt;toolStripMenuItem_New.Type" xml:space="preserve">
<value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data> </data>
<data name="&gt;&gt;toolStripMenuItem_Modify.Name" xml:space="preserve"> <data name="&gt;&gt;toolStripMenuItem_Modify.Name" xml:space="preserve">
<value>toolStripMenuItem_Modify</value> <value>toolStripMenuItem_Modify</value>
</data> </data>
<data name="&gt;&gt;toolStripMenuItem_Modify.Type" xml:space="preserve"> <data name="&gt;&gt;toolStripMenuItem_Modify.Type" xml:space="preserve">
<value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data> </data>
<data name="&gt;&gt;toolStripMenuItem_Delete.Name" xml:space="preserve"> <data name="&gt;&gt;toolStripMenuItem_Delete.Name" xml:space="preserve">
<value>toolStripMenuItem_Delete</value> <value>toolStripMenuItem_Delete</value>
</data> </data>
<data name="&gt;&gt;toolStripMenuItem_Delete.Type" xml:space="preserve"> <data name="&gt;&gt;toolStripMenuItem_Delete.Type" xml:space="preserve">
<value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data> </data>
<data name="&gt;&gt;toolStripSeparator1.Name" xml:space="preserve"> <data name="&gt;&gt;toolStripSeparator1.Name" xml:space="preserve">
<value>toolStripSeparator1</value> <value>toolStripSeparator1</value>
</data> </data>
<data name="&gt;&gt;toolStripSeparator1.Type" xml:space="preserve"> <data name="&gt;&gt;toolStripSeparator1.Type" xml:space="preserve">
<value>System.Windows.Forms.ToolStripSeparator, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> <value>System.Windows.Forms.ToolStripSeparator, System.Windows.Forms, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data> </data>
<data name="&gt;&gt;toolStripMenuItem_About.Name" xml:space="preserve"> <data name="&gt;&gt;toolStripMenuItem_About.Name" xml:space="preserve">
<value>toolStripMenuItem_About</value> <value>toolStripMenuItem_About</value>
</data> </data>
<data name="&gt;&gt;toolStripMenuItem_About.Type" xml:space="preserve"> <data name="&gt;&gt;toolStripMenuItem_About.Type" xml:space="preserve">
<value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data> </data>
<data name="&gt;&gt;imageListProxies.Name" xml:space="preserve"> <data name="&gt;&gt;imageListProxies.Name" xml:space="preserve">
<value>imageListProxies</value> <value>imageListProxies</value>
</data> </data>
<data name="&gt;&gt;imageListProxies.Type" xml:space="preserve"> <data name="&gt;&gt;imageListProxies.Type" xml:space="preserve">
<value>System.Windows.Forms.ImageList, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> <value>System.Windows.Forms.ImageList, System.Windows.Forms, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data> </data>
<data name="&gt;&gt;$this.Name" xml:space="preserve"> <data name="&gt;&gt;$this.Name" xml:space="preserve">
<value>PortProxyGUI</value> <value>PortProxyGUI</value>
</data> </data>
<data name="&gt;&gt;$this.Type" xml:space="preserve"> <data name="&gt;&gt;$this.Type" xml:space="preserve">
<value>System.Windows.Forms.Form, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> <value>System.Windows.Forms.Form, System.Windows.Forms, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data> </data>
</root> </root>

View File

@ -80,5 +80,9 @@ namespace PortProxyGUI
CmdRunner.Execute($"netsh interface portproxy delete {rule.Type} listenaddress={rule.ListenOn} listenport={rule.ListenPort}"); CmdRunner.Execute($"netsh interface portproxy delete {rule.Type} listenaddress={rule.ListenOn} listenport={rule.ListenPort}");
} }
public static string FlushDNSCache()
{
return CmdRunner.Execute("ipconfig /flushdns");
}
} }
} }