diff --git a/PortProxyGUI - Core31/PortProxyGUI - Core31.csproj b/PortProxyGUI - Core31/PortProxyGUI - Core31.csproj
new file mode 100644
index 0000000..ac879a3
--- /dev/null
+++ b/PortProxyGUI - Core31/PortProxyGUI - Core31.csproj
@@ -0,0 +1,85 @@
+
+
+
+ WinExe
+ netcoreapp3.1
+ true
+ app.manifest
+ zmjack
+ nstandard.net
+ A manager of the netsh interface portproxy which is to evaluate TCP/IP port redirect on windows.
+ https://github.com/zmjack/PortProxyGUI
+ https://github.com/zmjack/PortProxyGUI
+ git
+ portproxy TCP/IP redirector
+ LICENSE.md
+ Copyright © nstandard.net 2020
+ 1.3.0
+ icon.ico
+ PortProxyGUI
+ PortProxyGUI
+
+
+
+ none
+ false
+ AnyCPU
+
+
+
+ AnyCPU
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ True
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Form
+
+
+
+
+
+ Designer
+
+
+
+
+
+
\ No newline at end of file
diff --git a/PortProxyGUI - Core31/Program.cs b/PortProxyGUI - Core31/Program.cs
new file mode 100644
index 0000000..02d1d48
--- /dev/null
+++ b/PortProxyGUI - Core31/Program.cs
@@ -0,0 +1,24 @@
+using PortProxyGUI.Data;
+using System;
+using System.Windows.Forms;
+
+namespace PortProxyGUI
+{
+ static class Program
+ {
+ public static readonly ApplicationDbScope SqliteDbScope = ApplicationDbScope.UseDefault();
+
+ ///
+ /// The main entry point for the application.
+ ///
+ [STAThread]
+ static void Main()
+ {
+ SqliteDbScope.Migrate();
+ Application.SetHighDpiMode(HighDpiMode.SystemAware);
+ Application.EnableVisualStyles();
+ Application.SetCompatibleTextRenderingDefault(false);
+ Application.Run(new PortProxyGUI());
+ }
+ }
+}
diff --git a/PortProxyGUI - Core31/app.manifest b/PortProxyGUI - Core31/app.manifest
new file mode 100644
index 0000000..169e618
--- /dev/null
+++ b/PortProxyGUI - Core31/app.manifest
@@ -0,0 +1,76 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/PortProxyGUI - Core31/icon.ico b/PortProxyGUI - Core31/icon.ico
new file mode 100644
index 0000000..a4316bc
Binary files /dev/null and b/PortProxyGUI - Core31/icon.ico differ
diff --git a/PortProxyGUI/About.Designer.cs b/PortProxyGUI - NET35/About.Designer.cs
similarity index 100%
rename from PortProxyGUI/About.Designer.cs
rename to PortProxyGUI - NET35/About.Designer.cs
diff --git a/PortProxyGUI/About.cs b/PortProxyGUI - NET35/About.cs
similarity index 93%
rename from PortProxyGUI/About.cs
rename to PortProxyGUI - NET35/About.cs
index 8106a60..9f52ee9 100644
--- a/PortProxyGUI/About.cs
+++ b/PortProxyGUI - NET35/About.cs
@@ -1,5 +1,6 @@
using System;
using System.Diagnostics;
+using System.Drawing;
using System.Windows.Forms;
namespace PortProxyGUI
@@ -11,7 +12,10 @@ namespace PortProxyGUI
public About(PortProxyGUI portProxyGUI)
{
PortProxyGUI = portProxyGUI;
+
InitializeComponent();
+ Font = Util.UiFont;
+
label_version.Text = label_version.Text + " v" + Application.ProductVersion;
}
diff --git a/PortProxyGUI/About.resx b/PortProxyGUI - NET35/About.resx
similarity index 99%
rename from PortProxyGUI/About.resx
rename to PortProxyGUI - NET35/About.resx
index 159d709..9184a85 100644
--- a/PortProxyGUI/About.resx
+++ b/PortProxyGUI - NET35/About.resx
@@ -112,19 +112,22 @@
2.0
- System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+ System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
- System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
+
+
+ Microsoft YaHei UI, 9pt
+
12, 101
320, 25
-
+
0
@@ -138,7 +141,7 @@
linkLabel1
- System.Windows.Forms.LinkLabel, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+ System.Windows.Forms.LinkLabel, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
$this
@@ -146,6 +149,9 @@
3
+
+ Microsoft YaHei UI, 9pt
+
12, 31
@@ -156,8 +162,8 @@
1
- This is a free software.
-You can browse the source code on GitHub.
+ It's open source software,
+and you don't have to pay anything.
MiddleCenter
@@ -166,7 +172,7 @@ You can browse the source code on GitHub.
label1
- System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+ System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
$this
@@ -174,6 +180,9 @@ You can browse the source code on GitHub.
2
+
+ Microsoft YaHei UI, 9pt
+
12, 6
@@ -193,7 +202,7 @@ You can browse the source code on GitHub.
label_version
- System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+ System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
$this
@@ -201,6 +210,9 @@ You can browse the source code on GitHub.
1
+
+ Microsoft YaHei UI, 9pt
+
12, 78
@@ -211,7 +223,7 @@ You can browse the source code on GitHub.
2
- Star me at:
+ Get software updates from GitHub, or star me:
MiddleCenter
@@ -220,7 +232,7 @@ You can browse the source code on GitHub.
label_Star
- System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+ System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
$this
@@ -228,7 +240,7 @@ You can browse the source code on GitHub.
0
-
+
True
@@ -2395,7 +2407,7 @@ You can browse the source code on GitHub.
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=
-
+
3, 2, 3, 2
@@ -2409,6 +2421,6 @@ You can browse the source code on GitHub.
About
- System.Windows.Forms.Form, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+ System.Windows.Forms.Form, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
\ No newline at end of file
diff --git a/PortProxyGUI/About.zh-CN.resx b/PortProxyGUI - NET35/About.zh-CN.resx
similarity index 99%
rename from PortProxyGUI/About.zh-CN.resx
rename to PortProxyGUI - NET35/About.zh-CN.resx
index 85bc6fe..c113133 100644
--- a/PortProxyGUI/About.zh-CN.resx
+++ b/PortProxyGUI - NET35/About.zh-CN.resx
@@ -112,19 +112,22 @@
2.0
- System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+ System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
- System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
+
+
+ Microsoft YaHei UI, 9pt
+
12, 101
320, 25
-
+
0
@@ -138,7 +141,7 @@
linkLabel1
- System.Windows.Forms.LinkLabel, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+ System.Windows.Forms.LinkLabel, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
$this
@@ -146,6 +149,9 @@
3
+
+ Microsoft YaHei UI, 9pt
+
12, 31
@@ -156,8 +162,8 @@
1
- 这是款免费软件,
-您可以在 GitHub 上浏览项目源代码。
+ 这是款开源软件,
+并且您无需为此支付任何费用。
MiddleCenter
@@ -166,7 +172,7 @@
label1
- System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+ System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
$this
@@ -174,6 +180,9 @@
2
+
+ Microsoft YaHei UI, 9pt
+
12, 6
@@ -193,7 +202,7 @@
label_version
- System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+ System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
$this
@@ -201,6 +210,9 @@
1
+
+ Microsoft YaHei UI, 9pt
+
12, 78
@@ -211,7 +223,7 @@
2
- 点星鼓励:
+ 从 GitHub 获取软件更新,或给予星星鼓励:
MiddleCenter
@@ -220,7 +232,7 @@
label_Star
- System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+ System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
$this
@@ -2395,7 +2407,7 @@
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=
-
+
3, 2, 3, 2
@@ -2403,12 +2415,12 @@
CenterScreen
- 关于
+ About
About
- System.Windows.Forms.Form, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+ System.Windows.Forms.Form, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
\ No newline at end of file
diff --git a/PortProxyGUI - NET35/PortProxyGUI - NET35.csproj b/PortProxyGUI - NET35/PortProxyGUI - NET35 - UI.csproj
similarity index 84%
rename from PortProxyGUI - NET35/PortProxyGUI - NET35.csproj
rename to PortProxyGUI - NET35/PortProxyGUI - NET35 - UI.csproj
index e8442cb..5f2f474 100644
--- a/PortProxyGUI - NET35/PortProxyGUI - NET35.csproj
+++ b/PortProxyGUI - NET35/PortProxyGUI - NET35 - UI.csproj
@@ -65,7 +65,7 @@
false
- true
+ false
LocalIntranet
@@ -95,56 +95,38 @@
-
- About.cs
+
Form
-
- About.designer.cs
+
About.cs
-
- PortProxyGUI.cs
+
Form
-
- PortProxyGUI.designer.cs
+
PortProxyGUI.cs
-
- SetProxyForm.cs
- Form
-
-
- SetProxyForm.designer.cs
- SetProxyForm.cs
-
-
- About.resx
+
+ Form
+
+
+ SetProxy.cs
+
+
About.cs
-
- About.zh-CN.resx
+
About.cs
-
- PortProxyGUI.resx
+
PortProxyGUI.cs
-
- PortProxyGUI.zh-CN.resx
+
PortProxyGUI.cs
-
- SetProxyForm.resx
- SetProxyForm.cs
-
-
- SetProxyForm.zh-CN.resx
- SetProxyForm.cs
-
ResXFileCodeGenerator
Resources.Designer.cs
@@ -155,6 +137,12 @@
Resources.resx
True
+
+ SetProxy.cs
+
+
+ SetProxy.cs
+
diff --git a/PortProxyGUI/PortProxyGUI.Designer.cs b/PortProxyGUI - NET35/PortProxyGUI.Designer.cs
similarity index 91%
rename from PortProxyGUI/PortProxyGUI.Designer.cs
rename to PortProxyGUI - NET35/PortProxyGUI.Designer.cs
index 715302f..672cbce 100644
--- a/PortProxyGUI/PortProxyGUI.Designer.cs
+++ b/PortProxyGUI - NET35/PortProxyGUI.Designer.cs
@@ -31,13 +31,13 @@
this.components = new System.ComponentModel.Container();
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(PortProxyGUI));
this.listViewProxies = new System.Windows.Forms.ListView();
- this.columnHeader1 = new System.Windows.Forms.ColumnHeader();
- this.columnHeader2 = new System.Windows.Forms.ColumnHeader();
- this.columnHeader3 = new System.Windows.Forms.ColumnHeader();
- this.columnHeader4 = new System.Windows.Forms.ColumnHeader();
- this.columnHeader5 = new System.Windows.Forms.ColumnHeader();
- this.columnHeader6 = new System.Windows.Forms.ColumnHeader();
- this.columnHeader7 = new System.Windows.Forms.ColumnHeader();
+ this.columnHeader1 = ((System.Windows.Forms.ColumnHeader)(new System.Windows.Forms.ColumnHeader()));
+ this.columnHeader2 = ((System.Windows.Forms.ColumnHeader)(new System.Windows.Forms.ColumnHeader()));
+ this.columnHeader3 = ((System.Windows.Forms.ColumnHeader)(new System.Windows.Forms.ColumnHeader()));
+ this.columnHeader4 = ((System.Windows.Forms.ColumnHeader)(new System.Windows.Forms.ColumnHeader()));
+ this.columnHeader5 = ((System.Windows.Forms.ColumnHeader)(new System.Windows.Forms.ColumnHeader()));
+ this.columnHeader6 = ((System.Windows.Forms.ColumnHeader)(new System.Windows.Forms.ColumnHeader()));
+ this.columnHeader7 = ((System.Windows.Forms.ColumnHeader)(new System.Windows.Forms.ColumnHeader()));
this.contextMenuStrip1 = new System.Windows.Forms.ContextMenuStrip(this.components);
this.toolStripMenuItem_Enable = new System.Windows.Forms.ToolStripMenuItem();
this.toolStripMenuItem_Disable = new System.Windows.Forms.ToolStripMenuItem();
@@ -74,6 +74,7 @@
this.listViewProxies.View = System.Windows.Forms.View.Details;
this.listViewProxies.ColumnClick += new System.Windows.Forms.ColumnClickEventHandler(this.listView1_ColumnClick);
this.listViewProxies.DoubleClick += new System.EventHandler(this.listView1_DoubleClick);
+ this.listViewProxies.KeyUp += new System.Windows.Forms.KeyEventHandler(this.listViewProxies_KeyUp);
this.listViewProxies.MouseUp += new System.Windows.Forms.MouseEventHandler(this.listView1_MouseUp);
//
// columnHeader1
@@ -90,6 +91,7 @@
//
// columnHeader4
//
+ this.columnHeader4.Tag = "";
resources.ApplyResources(this.columnHeader4, "columnHeader4");
//
// columnHeader5
@@ -98,6 +100,7 @@
//
// columnHeader6
//
+ this.columnHeader6.Tag = "";
resources.ApplyResources(this.columnHeader6, "columnHeader6");
//
// columnHeader7
@@ -173,7 +176,6 @@
//
// imageListProxies
//
- this.imageListProxies.ColorDepth = System.Windows.Forms.ColorDepth.Depth8Bit;
this.imageListProxies.ImageStream = ((System.Windows.Forms.ImageListStreamer)(resources.GetObject("imageListProxies.ImageStream")));
this.imageListProxies.TransparentColor = System.Drawing.Color.Transparent;
this.imageListProxies.Images.SetKeyName(0, "disable.png");
diff --git a/PortProxyGUI/PortProxyGUI.cs b/PortProxyGUI - NET35/PortProxyGUI.cs
similarity index 82%
rename from PortProxyGUI/PortProxyGUI.cs
rename to PortProxyGUI - NET35/PortProxyGUI.cs
index e732df9..5f88365 100644
--- a/PortProxyGUI/PortProxyGUI.cs
+++ b/PortProxyGUI - NET35/PortProxyGUI.cs
@@ -1,6 +1,7 @@
using NStandard;
using System;
using System.Data;
+using System.Drawing;
using System.Linq;
using System.Windows.Forms;
using static System.Windows.Forms.ListViewItem;
@@ -9,13 +10,15 @@ namespace PortProxyGUI
{
public partial class PortProxyGUI : Form
{
- public SetProxyForm SetProxyForm;
+ public SetProxy SetProxyForm;
public About AboutForm;
private ListViewColumnSorter lvwColumnSorter;
public PortProxyGUI()
{
InitializeComponent();
+ Font = Util.UiFont;
+
lvwColumnSorter = new ListViewColumnSorter();
listViewProxies.ListViewItemSorter = lvwColumnSorter;
}
@@ -44,7 +47,7 @@ namespace PortProxyGUI
ListenPort = listenPort,
ConnectTo = subItems[4].Text.Trim(),
ConnectPort = connectPort,
- Note = subItems[6].Text.Trim(),
+ Comment = subItems[6].Text.Trim(),
Group = item.Group?.Header.Trim(),
};
return rule;
@@ -98,7 +101,7 @@ namespace PortProxyGUI
foreach (var item in items) listViewProxies.Items.Remove(item);
}
- private void SetProxyForUpdate(SetProxyForm form)
+ private void SetProxyForUpdate(SetProxy form)
{
var item = listViewProxies.SelectedItems.OfType().FirstOrDefault();
try
@@ -116,9 +119,14 @@ namespace PortProxyGUI
private void InitProxyGroups(Data.Rule[] rules)
{
listViewProxies.Groups.Clear();
- var groups = rules.GroupBy(x => x.Group).Select(x => new ListViewGroup(x.Key)).ToArray();
+ var groups = (
+ from g in rules.GroupBy(x => x.Group)
+ let name = g.Key
+ where !name.IsNullOrWhiteSpace()
+ orderby name
+ select new ListViewGroup(name)
+ ).ToArray();
listViewProxies.Groups.AddRange(groups);
- listViewProxies.ShowGroups = groups.Any(x => !x.Name.IsNullOrEmpty());
}
private void InitProxyItems(Data.Rule[] rules, Data.Rule[] proxies)
@@ -129,25 +137,40 @@ namespace PortProxyGUI
var imageIndex = proxies.Any(p => p.EqualsWithKeys(rule)) ? 1 : 0;
var group = listViewProxies.Groups.OfType().FirstOrDefault(x => x.Header == rule.Group);
- var item = new ListViewItem
- {
- ImageIndex = imageIndex,
- Tag = rule.Id,
- Group = group,
- };
- item.SubItems.AddRange(new[]
- {
- rule.Type,
- rule.ListenOn,
- rule.ListenPort.ToString(),
- rule.ConnectTo,
- rule.ConnectPort.ToString(),
- rule.Note ?? "",
- });
+ var item = new ListViewItem();
+ UpdateListViewItem(item, rule, imageIndex);
listViewProxies.Items.Add(item);
}
}
+ public void UpdateListViewItem(ListViewItem item, Data.Rule rule, int imageIndex)
+ {
+ item.ImageIndex = imageIndex;
+ item.Tag = rule.Id;
+ item.SubItems.Clear();
+ item.SubItems.AddRange(new[]
+ {
+ new ListViewSubItem(item, rule.Type),
+ new ListViewSubItem(item, rule.ListenOn),
+ new ListViewSubItem(item, rule.ListenPort.ToString()) { Tag = "Number" },
+ new ListViewSubItem(item, rule.ConnectTo),
+ new ListViewSubItem(item, rule.ConnectPort.ToString ()) { Tag = "Number" },
+ new ListViewSubItem(item, rule.Comment ?? ""),
+ });
+
+ if (rule.Group.IsNullOrWhiteSpace()) item.Group = null;
+ else
+ {
+ var group = listViewProxies.Groups.OfType().FirstOrDefault(x => x.Header == rule.Group);
+ if (group == null)
+ {
+ group = new ListViewGroup(rule.Group);
+ listViewProxies.Groups.Add(group);
+ }
+ item.Group = group;
+ }
+ }
+
public void RefreshProxyList()
{
var proxies = CmdUtil.GetProxies();
@@ -182,13 +205,13 @@ namespace PortProxyGUI
case ToolStripMenuItem item when item == toolStripMenuItem_Disable: DisableSelectedProxies(); break;
case ToolStripMenuItem item when item == toolStripMenuItem_New:
- if (SetProxyForm == null) SetProxyForm = new SetProxyForm(this);
+ if (SetProxyForm == null) SetProxyForm = new SetProxy(this);
SetProxyForm.UseNormalMode();
SetProxyForm.ShowDialog();
break;
case ToolStripMenuItem item when item == toolStripMenuItem_Modify:
- if (SetProxyForm == null) SetProxyForm = new SetProxyForm(this);
+ if (SetProxyForm == null) SetProxyForm = new SetProxy(this);
SetProxyForUpdate(SetProxyForm);
SetProxyForm.ShowDialog();
break;
@@ -230,7 +253,7 @@ namespace PortProxyGUI
var selectAny = _sender.SelectedItems.OfType().Any();
if (selectAny)
{
- if (SetProxyForm == null) SetProxyForm = new SetProxyForm(this);
+ if (SetProxyForm == null) SetProxyForm = new SetProxy(this);
SetProxyForUpdate(SetProxyForm);
SetProxyForm.ShowDialog();
}
@@ -263,5 +286,12 @@ namespace PortProxyGUI
listViewProxies.Sort();
}
+ private void listViewProxies_KeyUp(object sender, KeyEventArgs e)
+ {
+ if (sender is ListView)
+ {
+ if (e.KeyCode == Keys.Delete) DeleteSelectedProxies();
+ }
+ }
}
}
diff --git a/PortProxyGUI/PortProxyGUI.resx b/PortProxyGUI - NET35/PortProxyGUI.resx
similarity index 95%
rename from PortProxyGUI/PortProxyGUI.resx
rename to PortProxyGUI - NET35/PortProxyGUI.resx
index 01b61ca..760c28a 100644
--- a/PortProxyGUI/PortProxyGUI.resx
+++ b/PortProxyGUI - NET35/PortProxyGUI.resx
@@ -1,4 +1,64 @@
-
+
+
+
@@ -52,15 +112,15 @@
2.0
- System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+ System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
- System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
+
24
@@ -95,15 +155,103 @@
100
- Note
+ Comment
104
-
+
17, 17
-
+
+
+ 155, 176
+
+
+ contextMenuStrip1
+
+
+ System.Windows.Forms.ContextMenuStrip, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+
+ Fill
+
+
+ Microsoft YaHei UI, 9pt
+
+
+ 0, 0
+
+
+ 4, 3, 4, 3
+
+
+ 704, 421
+
+
+ 182, 17
+
+
+
+ AAEAAAD/////AQAAAAAAAAAMAgAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj0yLjAuMC4w
+ LCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACZTeXN0
+ ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAADc
+ CAAAAk1TRnQBSQFMAgEBAgEAASABAQEgAQEBEAEAARABAAT/AQkBAAj/AUIBTQE2AQQGAAE2AQQCAAEo
+ AwABQAMAARADAAEBAQABCAYAAQQYAAGAAgABgAMAAoABAAGAAwABgAEAAYABAAKAAgADwAEAAcAB3AHA
+ AQAB8AHKAaYBAAEzBQABMwEAATMBAAEzAQACMwIAAxYBAAMcAQADIgEAAykBAANVAQADTQEAA0IBAAM5
+ AQABgAF8Af8BAAJQAf8BAAGTAQAB1gEAAf8B7AHMAQABxgHWAe8BAAHWAucBAAGQAakBrQIAAf8BMwMA
+ AWYDAAGZAwABzAIAATMDAAIzAgABMwFmAgABMwGZAgABMwHMAgABMwH/AgABZgMAAWYBMwIAAmYCAAFm
+ AZkCAAFmAcwCAAFmAf8CAAGZAwABmQEzAgABmQFmAgACmQIAAZkBzAIAAZkB/wIAAcwDAAHMATMCAAHM
+ AWYCAAHMAZkCAALMAgABzAH/AgAB/wFmAgAB/wGZAgAB/wHMAQABMwH/AgAB/wEAATMBAAEzAQABZgEA
+ ATMBAAGZAQABMwEAAcwBAAEzAQAB/wEAAf8BMwIAAzMBAAIzAWYBAAIzAZkBAAIzAcwBAAIzAf8BAAEz
+ AWYCAAEzAWYBMwEAATMCZgEAATMBZgGZAQABMwFmAcwBAAEzAWYB/wEAATMBmQIAATMBmQEzAQABMwGZ
+ AWYBAAEzApkBAAEzAZkBzAEAATMBmQH/AQABMwHMAgABMwHMATMBAAEzAcwBZgEAATMBzAGZAQABMwLM
+ AQABMwHMAf8BAAEzAf8BMwEAATMB/wFmAQABMwH/AZkBAAEzAf8BzAEAATMC/wEAAWYDAAFmAQABMwEA
+ AWYBAAFmAQABZgEAAZkBAAFmAQABzAEAAWYBAAH/AQABZgEzAgABZgIzAQABZgEzAWYBAAFmATMBmQEA
+ AWYBMwHMAQABZgEzAf8BAAJmAgACZgEzAQADZgEAAmYBmQEAAmYBzAEAAWYBmQIAAWYBmQEzAQABZgGZ
+ AWYBAAFmApkBAAFmAZkBzAEAAWYBmQH/AQABZgHMAgABZgHMATMBAAFmAcwBmQEAAWYCzAEAAWYBzAH/
+ AQABZgH/AgABZgH/ATMBAAFmAf8BmQEAAWYB/wHMAQABzAEAAf8BAAH/AQABzAEAApkCAAGZATMBmQEA
+ AZkBAAGZAQABmQEAAcwBAAGZAwABmQIzAQABmQEAAWYBAAGZATMBzAEAAZkBAAH/AQABmQFmAgABmQFm
+ ATMBAAGZATMBZgEAAZkBZgGZAQABmQFmAcwBAAGZATMB/wEAApkBMwEAApkBZgEAA5kBAAKZAcwBAAKZ
+ Af8BAAGZAcwCAAGZAcwBMwEAAWYBzAFmAQABmQHMAZkBAAGZAswBAAGZAcwB/wEAAZkB/wIAAZkB/wEz
+ AQABmQHMAWYBAAGZAf8BmQEAAZkB/wHMAQABmQL/AQABzAMAAZkBAAEzAQABzAEAAWYBAAHMAQABmQEA
+ AcwBAAHMAQABmQEzAgABzAIzAQABzAEzAWYBAAHMATMBmQEAAcwBMwHMAQABzAEzAf8BAAHMAWYCAAHM
+ AWYBMwEAAZkCZgEAAcwBZgGZAQABzAFmAcwBAAGZAWYB/wEAAcwBmQIAAcwBmQEzAQABzAGZAWYBAAHM
+ ApkBAAHMAZkBzAEAAcwBmQH/AQACzAIAAswBMwEAAswBZgEAAswBmQEAA8wBAALMAf8BAAHMAf8CAAHM
+ Af8BMwEAAZkB/wFmAQABzAH/AZkBAAHMAf8BzAEAAcwC/wEAAcwBAAEzAQAB/wEAAWYBAAH/AQABmQEA
+ AcwBMwIAAf8CMwEAAf8BMwFmAQAB/wEzAZkBAAH/ATMBzAEAAf8BMwH/AQAB/wFmAgAB/wFmATMBAAHM
+ AmYBAAH/AWYBmQEAAf8BZgHMAQABzAFmAf8BAAH/AZkCAAH/AZkBMwEAAf8BmQFmAQAB/wKZAQAB/wGZ
+ AcwBAAH/AZkB/wEAAf8BzAIAAf8BzAEzAQAB/wHMAWYBAAH/AcwBmQEAAf8CzAEAAf8BzAH/AQAC/wEz
+ AQABzAH/AWYBAAL/AZkBAAL/AcwBAAJmAf8BAAFmAf8BZgEAAWYC/wEAAf8CZgEAAf8BZgH/AQAC/wFm
+ AQABIQEAAaUBAANfAQADdwEAA4YBAAOWAQADywEAA7IBAAPXAQAD3QEAA+MBAAPqAQAD8QEAA/gBAAHw
+ AfsB/wEAAaQCoAEAA4ADAAH/AgAB/wMAAv8BAAH/AwAB/wEAAf8BAAL/AgAD/wQACvQ0AAH/AZQKFwGU
+ Af8CAAH/AboKlQG6Af8iAAGUDBcBlAIAAboMlQG6IgAOFwIADpUiAAQXARYB9AL/AfQBFgQXAgAOlSIA
+ AxcBFgH/Ab0BFgGUAfQB/wEWAxcCAAWVArsHlSIAAxcB9AG9AhcBlAH/AvQDFwIABJUBugL/AcEGlSIA
+ AxcB/wEWARcBlAH/ApQB/wMXAgADlQG6Af8BwQG6Af8BwQWVIgADFwH/ApQB/wGUARcBFgH/AxcCAAOV
+ Af8BwQKVAboB/wHBBJUiAAMXAvQB/wGUAhcBvQH0AxcCAAiVAboB/wHBA5UiAAMXARYB/wH0AZQBFgG9
+ Af8BFgMXAgAJlQG6Af8DlSIABBcBFgH0Av8B9AEWBBcB/wEADpUB/yEADhcB/wEADpUB/yEAAZQMFwGU
+ AgABugyVAboiAAH/AZQKFwGUAf8CAAH/AboKlQG6Af80AAH/CPQkAAFCAU0BPgcAAT4DAAEoAwABQAMA
+ ARADAAEBAQABAQUAAYAXAAP/AQAB4AEHAv8EAAGAAQEBgAEBBAABgAEBAYABAQQAAYABAQGAAQEEAAGA
+ AQEBgAEBBAABgAEBAYABAQQAAYABAQGAAQEEAAGAAQEBgAEBBAABgAEBAYABAQQAAYABAQGAAQEEAAGA
+ AQEBgAEBBAABgAEAAYAFAAGAAQABgAUAAYABAQGAAQEEAAGAAQEBgAEBBAAC/wHgAQ8EAAs=
+
+
+
+ 0
+
+
+ listViewProxies
+
+
+ System.Windows.Forms.ListView, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ $this
+
+
+ 1
+
154, 22
@@ -155,99 +303,14 @@
About
-
- 155, 176
-
-
- contextMenuStrip1
-
-
- System.Windows.Forms.ContextMenuStrip, System.Windows.Forms, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
-
- Fill
-
-
- 0, 0
-
-
- 4, 3, 4, 3
-
-
- 284, 261
-
-
- 182, 17
-
-
-
- AAEAAAD/////AQAAAAAAAAAMAgAAAEZTeXN0ZW0uV2luZG93cy5Gb3JtcywgQ3VsdHVyZT1uZXV0cmFs
- LCBQdWJsaWNLZXlUb2tlbj1iNzdhNWM1NjE5MzRlMDg5BQEAAAAmU3lzdGVtLldpbmRvd3MuRm9ybXMu
- SW1hZ2VMaXN0U3RyZWFtZXIBAAAABERhdGEHAgIAAAAJAwAAAA8DAAAA3AgAAAJNU0Z0AUkBTAIBAQIB
- AAGUAQABlAEAARABAAEQAQAE/wEJAQAI/wFCAU0BNgEEBgABNgEEAgABKAMAAUADAAEQAwABAQEAAQgG
- AAEEGAABgAIAAYADAAKAAQABgAMAAYABAAGAAQACgAIAA8ABAAHAAdwBwAEAAfABygGmAQABMwUAATMB
- AAEzAQABMwEAAjMCAAMWAQADHAEAAyIBAAMpAQADVQEAA00BAANCAQADOQEAAYABfAH/AQACUAH/AQAB
- kwEAAdYBAAH/AewBzAEAAcYB1gHvAQAB1gLnAQABkAGpAa0CAAH/ATMDAAFmAwABmQMAAcwCAAEzAwAC
- MwIAATMBZgIAATMBmQIAATMBzAIAATMB/wIAAWYDAAFmATMCAAJmAgABZgGZAgABZgHMAgABZgH/AgAB
- mQMAAZkBMwIAAZkBZgIAApkCAAGZAcwCAAGZAf8CAAHMAwABzAEzAgABzAFmAgABzAGZAgACzAIAAcwB
- /wIAAf8BZgIAAf8BmQIAAf8BzAEAATMB/wIAAf8BAAEzAQABMwEAAWYBAAEzAQABmQEAATMBAAHMAQAB
- MwEAAf8BAAH/ATMCAAMzAQACMwFmAQACMwGZAQACMwHMAQACMwH/AQABMwFmAgABMwFmATMBAAEzAmYB
- AAEzAWYBmQEAATMBZgHMAQABMwFmAf8BAAEzAZkCAAEzAZkBMwEAATMBmQFmAQABMwKZAQABMwGZAcwB
- AAEzAZkB/wEAATMBzAIAATMBzAEzAQABMwHMAWYBAAEzAcwBmQEAATMCzAEAATMBzAH/AQABMwH/ATMB
- AAEzAf8BZgEAATMB/wGZAQABMwH/AcwBAAEzAv8BAAFmAwABZgEAATMBAAFmAQABZgEAAWYBAAGZAQAB
- ZgEAAcwBAAFmAQAB/wEAAWYBMwIAAWYCMwEAAWYBMwFmAQABZgEzAZkBAAFmATMBzAEAAWYBMwH/AQAC
- ZgIAAmYBMwEAA2YBAAJmAZkBAAJmAcwBAAFmAZkCAAFmAZkBMwEAAWYBmQFmAQABZgKZAQABZgGZAcwB
- AAFmAZkB/wEAAWYBzAIAAWYBzAEzAQABZgHMAZkBAAFmAswBAAFmAcwB/wEAAWYB/wIAAWYB/wEzAQAB
- ZgH/AZkBAAFmAf8BzAEAAcwBAAH/AQAB/wEAAcwBAAKZAgABmQEzAZkBAAGZAQABmQEAAZkBAAHMAQAB
- mQMAAZkCMwEAAZkBAAFmAQABmQEzAcwBAAGZAQAB/wEAAZkBZgIAAZkBZgEzAQABmQEzAWYBAAGZAWYB
- mQEAAZkBZgHMAQABmQEzAf8BAAKZATMBAAKZAWYBAAOZAQACmQHMAQACmQH/AQABmQHMAgABmQHMATMB
- AAFmAcwBZgEAAZkBzAGZAQABmQLMAQABmQHMAf8BAAGZAf8CAAGZAf8BMwEAAZkBzAFmAQABmQH/AZkB
- AAGZAf8BzAEAAZkC/wEAAcwDAAGZAQABMwEAAcwBAAFmAQABzAEAAZkBAAHMAQABzAEAAZkBMwIAAcwC
- MwEAAcwBMwFmAQABzAEzAZkBAAHMATMBzAEAAcwBMwH/AQABzAFmAgABzAFmATMBAAGZAmYBAAHMAWYB
- mQEAAcwBZgHMAQABmQFmAf8BAAHMAZkCAAHMAZkBMwEAAcwBmQFmAQABzAKZAQABzAGZAcwBAAHMAZkB
- /wEAAswCAALMATMBAALMAWYBAALMAZkBAAPMAQACzAH/AQABzAH/AgABzAH/ATMBAAGZAf8BZgEAAcwB
- /wGZAQABzAH/AcwBAAHMAv8BAAHMAQABMwEAAf8BAAFmAQAB/wEAAZkBAAHMATMCAAH/AjMBAAH/ATMB
- ZgEAAf8BMwGZAQAB/wEzAcwBAAH/ATMB/wEAAf8BZgIAAf8BZgEzAQABzAJmAQAB/wFmAZkBAAH/AWYB
- zAEAAcwBZgH/AQAB/wGZAgAB/wGZATMBAAH/AZkBZgEAAf8CmQEAAf8BmQHMAQAB/wGZAf8BAAH/AcwC
- AAH/AcwBMwEAAf8BzAFmAQAB/wHMAZkBAAH/AswBAAH/AcwB/wEAAv8BMwEAAcwB/wFmAQAC/wGZAQAC
- /wHMAQACZgH/AQABZgH/AWYBAAFmAv8BAAH/AmYBAAH/AWYB/wEAAv8BZgEAASEBAAGlAQADXwEAA3cB
- AAOGAQADlgEAA8sBAAOyAQAD1wEAA90BAAPjAQAD6gEAA/EBAAP4AQAB8AH7Af8BAAGkAqABAAOAAwAB
- /wIAAf8DAAL/AQAB/wMAAf8BAAH/AQAC/wIAA/8EAAr0NAAB/wGUChcBlAH/AgAB/wG6CpUBugH/IgAB
- lAwXAZQCAAG6DJUBuiIADhcCAA6VIgAEFwEWAfQC/wH0ARYEFwIADpUiAAMXARYB/wG9ARYBlAH0Af8B
- FgMXAgAFlQK7B5UiAAMXAfQBvQIXAZQB/wL0AxcCAASVAboC/wHBBpUiAAMXAf8BFgEXAZQB/wKUAf8D
- FwIAA5UBugH/AcEBugH/AcEFlSIAAxcB/wKUAf8BlAEXARYB/wMXAgADlQH/AcEClQG6Af8BwQSVIgAD
- FwL0Af8BlAIXAb0B9AMXAgAIlQG6Af8BwQOVIgADFwEWAf8B9AGUARYBvQH/ARYDFwIACZUBugH/A5Ui
- AAQXARYB9AL/AfQBFgQXAf8BAA6VAf8hAA4XAf8BAA6VAf8hAAGUDBcBlAIAAboMlQG6IgAB/wGUChcB
- lAH/AgAB/wG6CpUBugH/NAAB/wj0JAABQgFNAT4HAAE+AwABKAMAAUADAAEQAwABAQEAAQEFAAGAFwAD
- /wEAAeABBwL/BAABgAEBAYABAQQAAYABAQGAAQEEAAGAAQEBgAEBBAABgAEBAYABAQQAAYABAQGAAQEE
- AAGAAQEBgAEBBAABgAEBAYABAQQAAYABAQGAAQEEAAGAAQEBgAEBBAABgAEBAYABAQQAAYABAAGABQAB
- gAEAAYAFAAGAAQEBgAEBBAABgAEBAYABAQQAAv8B4AEPBAAL
-
-
-
- 0
-
-
- listViewProxies
-
-
- System.Windows.Forms.ListView, System.Windows.Forms, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- $this
-
-
- 1
-
-
+
True
- 7, 17
+ 6, 12
- 284, 261
+ 704, 421
@@ -2420,114 +2483,114 @@
columnHeader1
- System.Windows.Forms.ColumnHeader, System.Windows.Forms, Culture=neutral, PublicKeyToken=b77a5c561934e089
+ System.Windows.Forms.ColumnHeader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
columnHeader2
- System.Windows.Forms.ColumnHeader, System.Windows.Forms, Culture=neutral, PublicKeyToken=b77a5c561934e089
+ System.Windows.Forms.ColumnHeader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
columnHeader3
- System.Windows.Forms.ColumnHeader, System.Windows.Forms, Culture=neutral, PublicKeyToken=b77a5c561934e089
+ System.Windows.Forms.ColumnHeader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
columnHeader4
- System.Windows.Forms.ColumnHeader, System.Windows.Forms, Culture=neutral, PublicKeyToken=b77a5c561934e089
+ System.Windows.Forms.ColumnHeader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
columnHeader5
- System.Windows.Forms.ColumnHeader, System.Windows.Forms, Culture=neutral, PublicKeyToken=b77a5c561934e089
+ System.Windows.Forms.ColumnHeader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
columnHeader6
- System.Windows.Forms.ColumnHeader, System.Windows.Forms, Culture=neutral, PublicKeyToken=b77a5c561934e089
+ System.Windows.Forms.ColumnHeader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
columnHeader7
- System.Windows.Forms.ColumnHeader, System.Windows.Forms, Culture=neutral, PublicKeyToken=b77a5c561934e089
+ System.Windows.Forms.ColumnHeader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
toolStripMenuItem_Enable
- System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Culture=neutral, PublicKeyToken=b77a5c561934e089
+ System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
toolStripMenuItem_Disable
- System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Culture=neutral, PublicKeyToken=b77a5c561934e089
+ System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
toolStripSeparator3
- System.Windows.Forms.ToolStripSeparator, System.Windows.Forms, Culture=neutral, PublicKeyToken=b77a5c561934e089
+ System.Windows.Forms.ToolStripSeparator, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
toolStripMenuItem_Refresh
- System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Culture=neutral, PublicKeyToken=b77a5c561934e089
+ System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
toolStripSeparator2
- System.Windows.Forms.ToolStripSeparator, System.Windows.Forms, Culture=neutral, PublicKeyToken=b77a5c561934e089
+ System.Windows.Forms.ToolStripSeparator, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
toolStripMenuItem_New
- System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Culture=neutral, PublicKeyToken=b77a5c561934e089
+ System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
toolStripMenuItem_Modify
- System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Culture=neutral, PublicKeyToken=b77a5c561934e089
+ System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
toolStripMenuItem_Delete
- System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Culture=neutral, PublicKeyToken=b77a5c561934e089
+ System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
toolStripSeparator1
- System.Windows.Forms.ToolStripSeparator, System.Windows.Forms, Culture=neutral, PublicKeyToken=b77a5c561934e089
+ System.Windows.Forms.ToolStripSeparator, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
toolStripMenuItem_About
- System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Culture=neutral, PublicKeyToken=b77a5c561934e089
+ System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
imageListProxies
- System.Windows.Forms.ImageList, System.Windows.Forms, Culture=neutral, PublicKeyToken=b77a5c561934e089
+ System.Windows.Forms.ImageList, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
PortProxyGUI
- System.Windows.Forms.Form, System.Windows.Forms, Culture=neutral, PublicKeyToken=b77a5c561934e089
+ System.Windows.Forms.Form, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
\ No newline at end of file
diff --git a/PortProxyGUI/PortProxyGUI.zh-CN.resx b/PortProxyGUI - NET35/PortProxyGUI.zh-CN.resx
similarity index 99%
rename from PortProxyGUI/PortProxyGUI.zh-CN.resx
rename to PortProxyGUI - NET35/PortProxyGUI.zh-CN.resx
index 3d63e63..6bc18b9 100644
--- a/PortProxyGUI/PortProxyGUI.zh-CN.resx
+++ b/PortProxyGUI - NET35/PortProxyGUI.zh-CN.resx
@@ -112,15 +112,15 @@
2.0
- System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+ System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
- System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
+
24
@@ -143,18 +143,24 @@
100
- 连接地址
+ 转发地址
140
- 连接端口
+ 转发端口
100
-
+
+ 备注
+
+
+ 104
+
+
17, 17
@@ -165,30 +171,33 @@
contextMenuStrip1
- System.Windows.Forms.ContextMenuStrip, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+ System.Windows.Forms.ContextMenuStrip, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
+
Fill
+
+ Microsoft YaHei UI, 9pt
+
0, 0
- 3, 2, 3, 2
+ 4, 3, 4, 3
- 624, 361
+ 704, 421
182, 17
- AAEAAAD/////AQAAAAAAAAAMAgAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj00LjAuMC4w
+ AAEAAAD/////AQAAAAAAAAAMAgAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj0yLjAuMC4w
LCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACZTeXN0
ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAADc
- CAAAAk1TRnQBSQFMAgEBAgEAAUABAAFYAQABEAEAARABAAT/AQkBEAj/AUIBTQE2AQQGAAE2AQQCAAEo
+ CAAAAk1TRnQBSQFMAgEBAgEAASABAQEkAQEBEAEAARABAAT/AQkBEAj/AUIBTQE2AQQGAAE2AQQCAAEo
AwABQAMAARADAAEBAQABCAYAAQQYAAGAAgABgAMAAoABAAGAAwABgAEAAYABAAKAAgADwAEAAcAB3AHA
AQAB8AHKAaYBAAEzBQABMwEAATMBAAEzAQACMwIAAxYBAAMcAQADIgEAAykBAANVAQADTQEAA0IBAAM5
AQABgAF8Af8BAAJQAf8BAAGTAQAB1gEAAf8B7AHMAQABxgHWAe8BAAHWAucBAAGQAakBrQIAAf8BMwMA
@@ -235,7 +244,7 @@
listViewProxies
- System.Windows.Forms.ListView, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+ System.Windows.Forms.ListView, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
$this
@@ -258,6 +267,15 @@
151, 6
+
+ 154, 22
+
+
+ 刷新 (&F)
+
+
+ 151, 6
+
154, 22
@@ -279,15 +297,6 @@
151, 6
-
- 154, 22
-
-
- 刷新 (&F)
-
-
- 151, 6
-
154, 22
@@ -301,7 +310,7 @@
6, 12
- 624, 361
+ 704, 421
@@ -2462,7 +2471,7 @@
- 3, 2, 3, 2
+ 4, 3, 4, 3
CenterScreen
@@ -2474,112 +2483,37 @@
columnHeader1
- System.Windows.Forms.ColumnHeader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+ System.Windows.Forms.ColumnHeader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
columnHeader2
- System.Windows.Forms.ColumnHeader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+ System.Windows.Forms.ColumnHeader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
columnHeader3
- System.Windows.Forms.ColumnHeader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+ System.Windows.Forms.ColumnHeader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
columnHeader4
- System.Windows.Forms.ColumnHeader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+ System.Windows.Forms.ColumnHeader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
columnHeader5
- System.Windows.Forms.ColumnHeader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+ System.Windows.Forms.ColumnHeader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
columnHeader6
- System.Windows.Forms.ColumnHeader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- toolStripMenuItem_Enable
-
-
- System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- toolStripMenuItem_Disable
-
-
- System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- toolStripSeparator3
-
-
- System.Windows.Forms.ToolStripSeparator, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- toolStripMenuItem_New
-
-
- System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- toolStripMenuItem_Modify
-
-
- System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- toolStripMenuItem_Delete
-
-
- System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- toolStripSeparator1
-
-
- System.Windows.Forms.ToolStripSeparator, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- toolStripMenuItem_Refresh
-
-
- System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- toolStripSeparator2
-
-
- System.Windows.Forms.ToolStripSeparator, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- toolStripMenuItem_About
-
-
- System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- imageListProxies
-
-
- System.Windows.Forms.ImageList, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- PortProxyGUI
-
-
- System.Windows.Forms.Form, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- 备注
+ System.Windows.Forms.ColumnHeader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
columnHeader7
@@ -2587,4 +2521,76 @@
System.Windows.Forms.ColumnHeader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+ toolStripMenuItem_Enable
+
+
+ System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ toolStripMenuItem_Disable
+
+
+ System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ toolStripSeparator3
+
+
+ System.Windows.Forms.ToolStripSeparator, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ toolStripMenuItem_Refresh
+
+
+ System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ toolStripSeparator2
+
+
+ System.Windows.Forms.ToolStripSeparator, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ toolStripMenuItem_New
+
+
+ System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ toolStripMenuItem_Modify
+
+
+ System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ toolStripMenuItem_Delete
+
+
+ System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ toolStripSeparator1
+
+
+ System.Windows.Forms.ToolStripSeparator, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ toolStripMenuItem_About
+
+
+ System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ imageListProxies
+
+
+ System.Windows.Forms.ImageList, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ PortProxyGUI
+
+
+ System.Windows.Forms.Form, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
\ No newline at end of file
diff --git a/PortProxyGUI - NET35/Program.cs b/PortProxyGUI - NET35/Program.cs
index 2e2c332..8a8a627 100644
--- a/PortProxyGUI - NET35/Program.cs
+++ b/PortProxyGUI - NET35/Program.cs
@@ -1,5 +1,6 @@
using PortProxyGUI.Data;
using System;
+using System.Drawing;
using System.Windows.Forms;
namespace PortProxyGUI
diff --git a/PortProxyGUI - NET35/Properties/AssemblyInfo.cs b/PortProxyGUI - NET35/Properties/AssemblyInfo.cs
index 938d4a3..4e0baa1 100644
--- a/PortProxyGUI - NET35/Properties/AssemblyInfo.cs
+++ b/PortProxyGUI - NET35/Properties/AssemblyInfo.cs
@@ -31,5 +31,5 @@ using System.Runtime.InteropServices;
// 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.2.0.0")]
-[assembly: AssemblyFileVersion("1.2.0.0")]
+[assembly: AssemblyVersion("1.3.0.0")]
+[assembly: AssemblyFileVersion("1.3.0.0")]
diff --git a/PortProxyGUI/SetProxyForm.Designer.cs b/PortProxyGUI - NET35/SetProxy.Designer.cs
similarity index 86%
rename from PortProxyGUI/SetProxyForm.Designer.cs
rename to PortProxyGUI - NET35/SetProxy.Designer.cs
index 6eaaab7..1864433 100644
--- a/PortProxyGUI/SetProxyForm.Designer.cs
+++ b/PortProxyGUI - NET35/SetProxy.Designer.cs
@@ -1,6 +1,6 @@
namespace PortProxyGUI
{
- partial class SetProxyForm
+ partial class SetProxy
{
///
/// Required designer variable.
@@ -28,7 +28,7 @@
///
private void InitializeComponent()
{
- System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(SetProxyForm));
+ System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(SetProxy));
this.label_ListenOn = new System.Windows.Forms.Label();
this.textBox_ListenOn = new System.Windows.Forms.TextBox();
this.label_ConnectTo = new System.Windows.Forms.Label();
@@ -40,9 +40,9 @@
this.label_ListenPort = new System.Windows.Forms.Label();
this.textBox_ListenPort = new System.Windows.Forms.TextBox();
this.comboBox_Type = new System.Windows.Forms.ComboBox();
- this.label_Note = new System.Windows.Forms.Label();
- this.textBox_Note = new System.Windows.Forms.TextBox();
- this.label1 = new System.Windows.Forms.Label();
+ this.label_Comment = new System.Windows.Forms.Label();
+ this.textBox_Comment = new System.Windows.Forms.TextBox();
+ this.label_Group = new System.Windows.Forms.Label();
this.comboBox_Group = new System.Windows.Forms.ComboBox();
this.SuspendLayout();
//
@@ -110,20 +110,20 @@
resources.GetString("comboBox_Type.Items4")});
this.comboBox_Type.Name = "comboBox_Type";
//
- // label_Note
+ // label_Comment
//
- resources.ApplyResources(this.label_Note, "label_Note");
- this.label_Note.Name = "label_Note";
+ resources.ApplyResources(this.label_Comment, "label_Comment");
+ this.label_Comment.Name = "label_Comment";
//
// textBox_Note
//
- resources.ApplyResources(this.textBox_Note, "textBox_Note");
- this.textBox_Note.Name = "textBox_Note";
+ resources.ApplyResources(this.textBox_Comment, "textBox_Note");
+ this.textBox_Comment.Name = "textBox_Note";
//
- // label1
+ // label_Group
//
- resources.ApplyResources(this.label1, "label1");
- this.label1.Name = "label1";
+ resources.ApplyResources(this.label_Group, "label_Group");
+ this.label_Group.Name = "label_Group";
//
// comboBox_Group
//
@@ -131,15 +131,15 @@
this.comboBox_Group.FormattingEnabled = true;
this.comboBox_Group.Name = "comboBox_Group";
//
- // SetProxyForm
+ // SetProxy
//
this.AcceptButton = this.button_Set;
resources.ApplyResources(this, "$this");
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.Controls.Add(this.comboBox_Group);
- this.Controls.Add(this.label1);
- this.Controls.Add(this.textBox_Note);
- this.Controls.Add(this.label_Note);
+ this.Controls.Add(this.label_Group);
+ this.Controls.Add(this.textBox_Comment);
+ this.Controls.Add(this.label_Comment);
this.Controls.Add(this.comboBox_Type);
this.Controls.Add(this.textBox_ListenPort);
this.Controls.Add(this.label_ListenPort);
@@ -154,7 +154,7 @@
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle;
this.MaximizeBox = false;
this.MinimizeBox = false;
- this.Name = "SetProxyForm";
+ this.Name = "SetProxy";
this.TopMost = true;
this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.SetProxyForm_FormClosing);
this.Load += new System.EventHandler(this.SetProxyForm_Load);
@@ -176,9 +176,9 @@
private System.Windows.Forms.Label label_ListenPort;
private System.Windows.Forms.TextBox textBox_ListenPort;
private System.Windows.Forms.ComboBox comboBox_Type;
- private System.Windows.Forms.Label label_Note;
- private System.Windows.Forms.TextBox textBox_Note;
- private System.Windows.Forms.Label label1;
+ private System.Windows.Forms.Label label_Comment;
+ private System.Windows.Forms.TextBox textBox_Comment;
+ private System.Windows.Forms.Label label_Group;
private System.Windows.Forms.ComboBox comboBox_Group;
}
}
\ No newline at end of file
diff --git a/PortProxyGUI/SetProxyForm.cs b/PortProxyGUI - NET35/SetProxy.cs
similarity index 77%
rename from PortProxyGUI/SetProxyForm.cs
rename to PortProxyGUI - NET35/SetProxy.cs
index c0b045e..8a32394 100644
--- a/PortProxyGUI/SetProxyForm.cs
+++ b/PortProxyGUI - NET35/SetProxy.cs
@@ -1,13 +1,14 @@
using NStandard;
using PortProxyGUI.Data;
using System;
+using System.Drawing;
using System.Linq;
using System.Text.RegularExpressions;
using System.Windows.Forms;
namespace PortProxyGUI
{
- public partial class SetProxyForm : Form
+ public partial class SetProxy : Form
{
public readonly PortProxyGUI ParentWindow;
private string AutoTypeString { get; }
@@ -16,11 +17,21 @@ namespace PortProxyGUI
private ListViewItem _listViewItem;
private Rule _itemRule;
- public SetProxyForm(PortProxyGUI parent)
+ public SetProxy(PortProxyGUI parent)
{
ParentWindow = parent;
+
InitializeComponent();
+ Font = Util.UiFont;
+
AutoTypeString = comboBox_Type.Text = comboBox_Type.Items.OfType().First();
+ var groupNames = (
+ from g in parent.listViewProxies.Groups.OfType()
+ let header = g.Header
+ where !header.IsNullOrWhiteSpace()
+ select header
+ ).ToArray();
+ comboBox_Group.Items.AddRange(groupNames);
}
public void UseNormalMode()
@@ -36,7 +47,7 @@ namespace PortProxyGUI
textBox_ListenPort.Text = "";
textBox_ConnectTo.Text = "";
textBox_ConnectPort.Text = "";
- textBox_Note.Text = "";
+ textBox_Comment.Text = "";
}
public void UseUpdateMode(ListViewItem item, Rule rule)
@@ -53,7 +64,7 @@ namespace PortProxyGUI
textBox_ListenPort.Text = rule.ListenPort.ToString();
textBox_ConnectTo.Text = rule.ConnectTo;
textBox_ConnectPort.Text = rule.ConnectPort.ToString();
- textBox_Note.Text = rule.Note;
+ textBox_Comment.Text = rule.Comment;
}
private bool IsIPv6(string ip)
@@ -90,7 +101,7 @@ namespace PortProxyGUI
ListenPort = listenPort,
ConnectTo = textBox_ConnectTo.Text.Trim(),
ConnectPort = connectPort,
- Note = textBox_Note.Text.Trim(),
+ Comment = textBox_Comment.Text.Trim(),
Group = comboBox_Group.Text.Trim(),
};
@@ -111,32 +122,13 @@ namespace PortProxyGUI
CmdUtil.AddOrUpdateProxy(rule);
Program.SqliteDbScope.Add(rule);
- _listViewItem.ImageIndex = 1;
- var subItems = _listViewItem.SubItems;
- subItems[1].Text = rule.Type;
- subItems[2].Text = rule.ListenOn;
- subItems[3].Text = rule.ListenPort.ToString();
- subItems[4].Text = rule.ConnectTo;
- subItems[5].Text = rule.ConnectPort.ToString();
- subItems[6].Text = rule.Note;
-
- if (rule.Group == null) _listViewItem.Group = null;
- else
- {
- var listView = ParentWindow.listViewProxies;
- var group = listView.Groups.OfType().FirstOrDefault(x => x.Name == rule.Group);
- if (group == null)
- {
- group = new ListViewGroup(rule.Group);
- listView.Groups.Add(group);
- }
-
- _listViewItem.Group = group;
- }
+ ParentWindow.UpdateListViewItem(_listViewItem, rule, 1);
}
else
{
CmdUtil.AddOrUpdateProxy(rule);
+ Program.SqliteDbScope.Add(rule);
+
ParentWindow.RefreshProxyList();
}
diff --git a/PortProxyGUI/SetProxyForm.zh-CN.resx b/PortProxyGUI - NET35/SetProxy.resx
similarity index 97%
rename from PortProxyGUI/SetProxyForm.zh-CN.resx
rename to PortProxyGUI - NET35/SetProxy.resx
index 59596b9..a5a6423 100644
--- a/PortProxyGUI/SetProxyForm.zh-CN.resx
+++ b/PortProxyGUI - NET35/SetProxy.resx
@@ -122,11 +122,18 @@
True
+
+ Microsoft YaHei UI, 9pt
+
- 12, 41
+ 14, 57
+
+
+
+ 4, 0, 4, 0
- 59, 12
+ 60, 17
0
@@ -146,15 +153,17 @@
14
-
- 83, 38
+
+ Microsoft YaHei UI, 9pt
+
+
+ 97, 54
-
- 3, 2, 3, 2
+ 4, 3, 4, 3
- 126, 21
+ 146, 23
0
@@ -180,11 +189,17 @@
True
+
+ Microsoft YaHei UI, 9pt
+
- 12, 66
+ 14, 86
+
+
+ 4, 0, 4, 0
- 65, 12
+ 71, 17
0
@@ -204,14 +219,17 @@
12
+
+ Microsoft YaHei UI, 9pt
+
- 83, 63
+ 97, 83
- 3, 2, 3, 2
+ 4, 3, 4, 3
- 126, 21
+ 146, 23
3
@@ -231,14 +249,17 @@
11
+
+ Microsoft YaHei UI, 9pt
+
- 256, 63
+ 299, 83
- 3, 2, 3, 2
+ 4, 3, 4, 3
- 73, 21
+ 84, 23
4
@@ -261,11 +282,17 @@
True
+
+ Microsoft YaHei UI, 9pt
+
- 215, 66
+ 251, 86
+
+
+ 4, 0, 4, 0
- 29, 12
+ 32, 17
0
@@ -285,11 +312,17 @@
9
+
+ Microsoft YaHei UI, 9pt
+
- 217, 98
+ 258, 122
+
+
+ 4, 4, 4, 4
- 112, 21
+ 125, 32
6
@@ -312,11 +345,17 @@
True
+
+ Microsoft YaHei UI, 9pt
+
- 12, 9
+ 14, 15
+
+
+ 4, 0, 4, 0
- 29, 12
+ 36, 17
0
@@ -339,11 +378,17 @@
True
+
+ Microsoft YaHei UI, 9pt
+
- 215, 41
+ 251, 57
+
+
+ 4, 0, 4, 0
- 29, 12
+ 32, 17
0
@@ -363,14 +408,17 @@
6
+
+ Microsoft YaHei UI, 9pt
+
- 256, 38
+ 299, 54
- 3, 2, 3, 2
+ 4, 3, 4, 3
- 73, 21
+ 84, 23
2
@@ -390,8 +438,8 @@
5
-
- Popup
+
+ Microsoft YaHei UI, 9pt
(Auto)
@@ -409,13 +457,13 @@
v6tov6
- 83, 6
+ 97, 12
- 3, 2, 3, 2
+ 4, 3, 4, 3
- 126, 20
+ 146, 25
5
@@ -432,44 +480,53 @@
4
-
+
True
-
+
+ Microsoft YaHei UI, 9pt
+
+
NoControl
-
- 12, 102
+
+ 14, 130
-
- 29, 12
+
+ 4, 0, 4, 0
-
+
+ 64, 17
+
+
7
-
- Note
+
+ Comment
-
- label_Note
+
+ label_Comment
-
+
System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
+
$this
-
+
3
+
+ Microsoft YaHei UI, 9pt
+
- 83, 98
+ 97, 127
- 3, 2, 3, 2
+ 4, 3, 4, 3
- 126, 21
+ 146, 23
8
@@ -489,47 +546,53 @@
2
-
+
True
-
+
+ Microsoft YaHei UI, 9pt
+
+
NoControl
-
- 215, 9
+
+ 251, 15
-
- 35, 12
+
+ 4, 0, 4, 0
-
+
+ 45, 17
+
+
9
-
+
Group
-
- label1
+
+ label_Group
-
+
System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
+
$this
-
+
1
-
- Popup
+
+ Microsoft YaHei UI, 9pt
- 256, 6
+ 299, 12
- 3, 2, 3, 2
+ 4, 3, 4, 3
- 73, 20
+ 84, 25
10
@@ -553,7 +616,7 @@
6, 12
- 344, 131
+ 398, 169
@@ -2714,7 +2777,7 @@
- 3, 2, 3, 2
+ 4, 3, 4, 3
Manual
@@ -2723,7 +2786,7 @@
Set Proxy
- SetProxyForm
+ SetProxy
System.Windows.Forms.Form, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
diff --git a/PortProxyGUI/SetProxyForm.resx b/PortProxyGUI - NET35/SetProxy.zh-CN.resx
similarity index 97%
rename from PortProxyGUI/SetProxyForm.resx
rename to PortProxyGUI - NET35/SetProxy.zh-CN.resx
index 59596b9..10b6dad 100644
--- a/PortProxyGUI/SetProxyForm.resx
+++ b/PortProxyGUI - NET35/SetProxy.zh-CN.resx
@@ -122,17 +122,24 @@
True
+
+ Microsoft YaHei UI, 9pt
+
- 12, 41
+ 14, 57
+
+
+
+ 4, 0, 4, 0
- 59, 12
+ 60, 17
0
- Listen on
+ 监听地址
label_ListenOn
@@ -146,15 +153,17 @@
14
-
- 83, 38
+
+ Microsoft YaHei UI, 9pt
+
+
+ 97, 54
-
- 3, 2, 3, 2
+ 4, 3, 4, 3
- 126, 21
+ 146, 23
0
@@ -180,17 +189,23 @@
True
+
+ Microsoft YaHei UI, 9pt
+
- 12, 66
+ 14, 86
+
+
+ 4, 0, 4, 0
- 65, 12
+ 71, 17
0
- Connect to
+ 转发地址
label_ConnectTo
@@ -204,14 +219,17 @@
12
+
+ Microsoft YaHei UI, 9pt
+
- 83, 63
+ 97, 83
- 3, 2, 3, 2
+ 4, 3, 4, 3
- 126, 21
+ 146, 23
3
@@ -231,14 +249,17 @@
11
+
+ Microsoft YaHei UI, 9pt
+
- 256, 63
+ 299, 83
- 3, 2, 3, 2
+ 4, 3, 4, 3
- 73, 21
+ 84, 23
4
@@ -261,17 +282,23 @@
True
+
+ Microsoft YaHei UI, 9pt
+
- 215, 66
+ 251, 86
+
+
+ 4, 0, 4, 0
- 29, 12
+ 32, 17
0
- Port
+ 端口
label_ConnectPort
@@ -285,17 +312,23 @@
9
+
+ Microsoft YaHei UI, 9pt
+
- 217, 98
+ 258, 122
+
+
+ 4, 4, 4, 4
- 112, 21
+ 125, 32
6
- Set
+ 设置
button_Set
@@ -312,17 +345,23 @@
True
+
+ Microsoft YaHei UI, 9pt
+
- 12, 9
+ 14, 15
+
+
+ 4, 0, 4, 0
- 29, 12
+ 36, 17
0
- Type
+ 类型
label_Type
@@ -339,17 +378,23 @@
True
+
+ Microsoft YaHei UI, 9pt
+
- 215, 41
+ 251, 57
+
+
+ 4, 0, 4, 0
- 29, 12
+ 32, 17
0
- Port
+ 端口
label_ListenPort
@@ -363,14 +408,17 @@
6
+
+ Microsoft YaHei UI, 9pt
+
- 256, 38
+ 299, 54
- 3, 2, 3, 2
+ 4, 3, 4, 3
- 73, 21
+ 84, 23
2
@@ -390,11 +438,11 @@
5
-
- Popup
+
+ Microsoft YaHei UI, 9pt
- (Auto)
+ (自动)
v4tov4
@@ -409,13 +457,13 @@
v6tov6
- 83, 6
+ 97, 12
- 3, 2, 3, 2
+ 4, 3, 4, 3
- 126, 20
+ 146, 25
5
@@ -432,44 +480,53 @@
4
-
+
True
-
+
+ Microsoft YaHei UI, 9pt
+
+
NoControl
-
- 12, 102
+
+ 14, 130
-
- 29, 12
+
+ 4, 0, 4, 0
-
+
+ 64, 17
+
+
7
-
- Note
+
+ 备注
-
- label_Note
+
+ label_Comment
-
+
System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
+
$this
-
+
3
+
+ Microsoft YaHei UI, 9pt
+
- 83, 98
+ 97, 127
- 3, 2, 3, 2
+ 4, 3, 4, 3
- 126, 21
+ 146, 23
8
@@ -489,47 +546,53 @@
2
-
+
True
-
+
+ Microsoft YaHei UI, 9pt
+
+
NoControl
-
- 215, 9
+
+ 251, 15
-
- 35, 12
+
+ 4, 0, 4, 0
-
+
+ 45, 17
+
+
9
-
- Group
+
+ 分组
-
- label1
+
+ label_Group
-
+
System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
+
$this
-
+
1
-
- Popup
+
+ Microsoft YaHei UI, 9pt
- 256, 6
+ 299, 12
- 3, 2, 3, 2
+ 4, 3, 4, 3
- 73, 20
+ 84, 25
10
@@ -546,14 +609,14 @@
0
-
+
True
-
+
6, 12
- 344, 131
+ 398, 169
@@ -2714,7 +2777,7 @@
- 3, 2, 3, 2
+ 4, 3, 4, 3
Manual
@@ -2723,7 +2786,7 @@
Set Proxy
- SetProxyForm
+ SetProxy
System.Windows.Forms.Form, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
diff --git a/PortProxyGUI - NET35/app.manifest b/PortProxyGUI - NET35/app.manifest
index 06dba89..f6a3bf4 100644
--- a/PortProxyGUI - NET35/app.manifest
+++ b/PortProxyGUI - NET35/app.manifest
@@ -19,8 +19,8 @@
-
+
diff --git a/PortProxyGUI - NET45/PortProxyGUI - NET45.csproj b/PortProxyGUI - NET45/PortProxyGUI - NET45.csproj
index 1b9fd51..5509a2b 100644
--- a/PortProxyGUI - NET45/PortProxyGUI - NET45.csproj
+++ b/PortProxyGUI - NET45/PortProxyGUI - NET45.csproj
@@ -68,7 +68,7 @@
false
- true
+ false
LocalIntranet
@@ -100,55 +100,46 @@
-
+
About.cs
Form
-
- About.designer.cs
- About.cs
+
+ About.Designer.cs
-
+
PortProxyGUI.cs
Form
-
- PortProxyGUI.designer.cs
- PortProxyGUI.cs
+
+ PortProxyGUI.Designer.cs
-
- SetProxyForm.cs
+
+ SetProxy.cs
Form
-
- SetProxyForm.designer.cs
- SetProxyForm.cs
+
+ SetProxy.Designer.cs
-
+
About.resx
- About.cs
-
+
About.zh-CN.resx
- About.cs
-
+
PortProxyGUI.resx
- PortProxyGUI.cs
-
+
PortProxyGUI.zh-CN.resx
- PortProxyGUI.cs
-
- SetProxyForm.resx
- SetProxyForm.cs
+
+ SetProxy.resx
-
- SetProxyForm.zh-CN.resx
- SetProxyForm.cs
+
+ SetProxy.zh-CN.resx
ResXFileCodeGenerator
diff --git a/PortProxyGUI - NET45/Properties/AssemblyInfo.cs b/PortProxyGUI - NET45/Properties/AssemblyInfo.cs
index 938d4a3..4e0baa1 100644
--- a/PortProxyGUI - NET45/Properties/AssemblyInfo.cs
+++ b/PortProxyGUI - NET45/Properties/AssemblyInfo.cs
@@ -31,5 +31,5 @@ using System.Runtime.InteropServices;
// 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.2.0.0")]
-[assembly: AssemblyFileVersion("1.2.0.0")]
+[assembly: AssemblyVersion("1.3.0.0")]
+[assembly: AssemblyFileVersion("1.3.0.0")]
diff --git a/PortProxyGUI - NET45/app.manifest b/PortProxyGUI - NET45/app.manifest
index 06dba89..f6a3bf4 100644
--- a/PortProxyGUI - NET45/app.manifest
+++ b/PortProxyGUI - NET45/app.manifest
@@ -19,8 +19,8 @@
-
+
diff --git a/PortProxyGUI.Shared/Data/ApplicationDbMigrationUtil.cs b/PortProxyGUI.Shared/Data/ApplicationDbMigrationUtil.cs
index 07f3e29..41c6b9a 100644
--- a/PortProxyGUI.Shared/Data/ApplicationDbMigrationUtil.cs
+++ b/PortProxyGUI.Shared/Data/ApplicationDbMigrationUtil.cs
@@ -1,7 +1,9 @@
using System;
using System.Collections.Generic;
+using System.Diagnostics;
using System.Linq;
using System.Reflection;
+using System.Windows.Forms;
namespace PortProxyGUI.Data
{
@@ -29,8 +31,20 @@ namespace PortProxyGUI.Data
{
var migration = GetLastMigration();
var assemblyVersion = Assembly.GetExecutingAssembly().GetName().Version;
+
if (new Version(migration.ProductVersion) > assemblyVersion)
- throw new InvalidOperationException("The current software version cannot use the configuration. Please download the latest version (https://github.com/zmjack/PortProxyGUI).");
+ {
+ if (MessageBox.Show(@"The current software version cannot use the configuration.
+
+You need to use a newer version of PortProxyGUI.
+
+Would you like to download it now?", "Upgrade", MessageBoxButtons.YesNo, MessageBoxIcon.Warning) == DialogResult.Yes)
+ {
+ Process.Start("explorer.exe", "https://github.com/zmjack/PortProxyGUI/releases");
+ }
+
+ Environment.Exit(0);
+ }
}
public Migration GetLastMigration()
@@ -77,6 +91,27 @@ namespace PortProxyGUI.Data
"ALTER TABLE rules ADD Note text;",
"ALTER TABLE rules ADD `Group` text;",
},
+
+ [new MigrationKey { MigrationId = "202202221635", ProductVersion = "1.3.0" }] = new[]
+ {
+ "ALTER TABLE rules RENAME TO rulesOld;",
+ "DROP INDEX IX_Rules_Type_ListenOn_ListenPort;",
+
+ @"CREATE TABLE rules (
+ Id text PRIMARY KEY,
+ Type text,
+ ListenOn text,
+ ListenPort integer,
+ ConnectTo text,
+ ConnectPort integer,
+ Comment text,
+ `Group` text
+);",
+ "CREATE UNIQUE INDEX IX_Rules_Type_ListenOn_ListenPort ON Rules ( Type, ListenOn, ListenPort );",
+
+ "INSERT INTO rules SELECT Id, Type, ListenOn, ListenPort, ConnectTo, ConnectPort, Note, `Group` FROM rulesOld;",
+ "DROP TABLE rulesOld;",
+ },
};
}
}
diff --git a/PortProxyGUI.Shared/Data/ApplicationDbScope.cs b/PortProxyGUI.Shared/Data/ApplicationDbScope.cs
index 6c3765c..24800df 100644
--- a/PortProxyGUI.Shared/Data/ApplicationDbScope.cs
+++ b/PortProxyGUI.Shared/Data/ApplicationDbScope.cs
@@ -43,7 +43,7 @@ namespace PortProxyGUI.Data
var newid = Guid.NewGuid().ToString();
if (obj is Rule rule)
- Sql($"INSERT INTO Rules (Id, Type, ListenOn, ListenPort, ConnectTo, ConnectPort, Note, `Group`) VALUES ({newid}, {rule.Type}, {rule.ListenOn}, {rule.ListenPort}, {rule.ConnectTo}, {rule.ConnectPort}, {rule.Note ?? ""}, {rule.Group ?? ""});");
+ Sql($"INSERT INTO Rules (Id, Type, ListenOn, ListenPort, ConnectTo, ConnectPort, Comment, `Group`) VALUES ({newid}, {rule.Type}, {rule.ListenOn}, {rule.ListenPort}, {rule.ConnectTo}, {rule.ConnectPort}, {rule.Comment ?? ""}, {rule.Group ?? ""});");
else throw new NotSupportedException($"Adding {obj.GetType().FullName} is not supported.");
}
public void AddRange(IEnumerable objs) where T : class
@@ -53,7 +53,7 @@ namespace PortProxyGUI.Data
public void Update(T obj) where T : class
{
- if (obj is Rule rule) Sql($"UPDATE Rules SET Type={rule.Type}, ListenOn={rule.ListenOn}, ListenPort={rule.ListenPort}, ConnectTo={rule.ConnectTo}, ConnectPort={rule.ConnectPort}, Note={rule.Note ?? ""}, `Group`={rule.Group ?? ""} WHERE Id={rule.Id};");
+ if (obj is Rule rule) Sql($"UPDATE Rules SET Type={rule.Type}, ListenOn={rule.ListenOn}, ListenPort={rule.ListenPort}, ConnectTo={rule.ConnectTo}, ConnectPort={rule.ConnectPort} WHERE Id={rule.Id};");
else throw new NotSupportedException($"Updating {obj.GetType().FullName} is not supported.");
}
public void UpdateRange(IEnumerable objs) where T : class
diff --git a/PortProxyGUI.Shared/Data/Rule.cs b/PortProxyGUI.Shared/Data/Rule.cs
index 30e0355..7b0d953 100644
--- a/PortProxyGUI.Shared/Data/Rule.cs
+++ b/PortProxyGUI.Shared/Data/Rule.cs
@@ -11,7 +11,7 @@ namespace PortProxyGUI.Data
public int ListenPort { get; set; }
public string ConnectTo { get; set; }
public int ConnectPort { get; set; }
- public string Note { get; set; }
+ public string Comment { get; set; }
public string Group { get; set; }
public bool Equals(Rule other)
@@ -22,7 +22,7 @@ namespace PortProxyGUI.Data
&& ListenPort == other.ListenPort
&& ConnectTo == other.ConnectTo
&& ConnectPort == other.ConnectPort
- && Note == other.Note
+ && Comment == other.Comment
&& Group == other.Group;
}
diff --git a/PortProxyGUI.Shared/ListViewColumnSorter.cs b/PortProxyGUI.Shared/ListViewColumnSorter.cs
index 2738154..b7b7610 100644
--- a/PortProxyGUI.Shared/ListViewColumnSorter.cs
+++ b/PortProxyGUI.Shared/ListViewColumnSorter.cs
@@ -51,7 +51,13 @@ namespace PortProxyGUI
listviewY = (ListViewItem)y;
// Compare the two items
- compareResult = ObjectCompare.Compare(listviewX.SubItems[ColumnToSort].Text, listviewY.SubItems[ColumnToSort].Text);
+ if (listviewX.SubItems[ColumnToSort].Tag?.ToString() == "Number" && listviewY.SubItems[ColumnToSort].Tag?.ToString() == "Number")
+ {
+ int.TryParse(listviewX.SubItems[ColumnToSort].Text, out var xint);
+ int.TryParse(listviewY.SubItems[ColumnToSort].Text, out var yint);
+ compareResult = ObjectCompare.Compare(xint, yint);
+ }
+ else compareResult = ObjectCompare.Compare(listviewX.SubItems[ColumnToSort].Text, listviewY.SubItems[ColumnToSort].Text);
// Calculate correct return value based on object comparison
if (OrderOfSort == SortOrder.Ascending)
diff --git a/PortProxyGUI.Shared/PortProxyGUI.Shared.projitems b/PortProxyGUI.Shared/PortProxyGUI.Shared.projitems
index 4b76964..ff4625d 100644
--- a/PortProxyGUI.Shared/PortProxyGUI.Shared.projitems
+++ b/PortProxyGUI.Shared/PortProxyGUI.Shared.projitems
@@ -18,5 +18,6 @@
+
\ No newline at end of file
diff --git a/PortProxyGUI.Shared/Util.cs b/PortProxyGUI.Shared/Util.cs
new file mode 100644
index 0000000..008347f
--- /dev/null
+++ b/PortProxyGUI.Shared/Util.cs
@@ -0,0 +1,17 @@
+using System;
+using System.Collections.Generic;
+using System.Drawing;
+using System.Text;
+
+namespace PortProxyGUI
+{
+ public class Util
+ {
+ ///
+ /// Compatibility between .NET Framework and .NET Core.
+ ///
+ ///
+ public static readonly Font UiFont = new Font(new FontFamily("Microsoft Sans Serif"), 8f);
+
+ }
+}
diff --git a/PortProxyGUI.sln b/PortProxyGUI.sln
index 9483548..5023366 100644
--- a/PortProxyGUI.sln
+++ b/PortProxyGUI.sln
@@ -1,7 +1,7 @@
Microsoft Visual Studio Solution File, Format Version 12.00
-# Visual Studio Version 16
-VisualStudioVersion = 16.0.30114.105
+# Visual Studio Version 17
+VisualStudioVersion = 17.1.32210.238
MinimumVisualStudioVersion = 15.0.26124.0
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "PortProxyGUI", "PortProxyGUI\PortProxyGUI.csproj", "{7459E9F4-8B98-42D6-92CF-E90961E05C90}"
EndProject
@@ -9,17 +9,24 @@ Project("{D954291E-2A0B-460D-934E-DC6B0785DB48}") = "PortProxyGUI.Shared", "Port
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "docs", "docs", "{E48EF63C-74A5-42B5-BFC5-20652E856B1F}"
ProjectSection(SolutionItems) = preProject
- README.md = README.md
docs\ui.png = docs\ui.png
EndProjectSection
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "PortProxyGUI - NET45", "PortProxyGUI - NET45\PortProxyGUI - NET45.csproj", "{1B166039-E98C-404A-89A5-C981364B5546}"
EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "PortProxyGUI - NET35", "PortProxyGUI - NET35\PortProxyGUI - NET35.csproj", "{56FB1CBC-BD89-47D7-A9D5-86F02EEF480F}"
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "PortProxyGUI - NET35 - UI", "PortProxyGUI - NET35\PortProxyGUI - NET35 - UI.csproj", "{56FB1CBC-BD89-47D7-A9D5-86F02EEF480F}"
+EndProject
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "PortProxyGUI - Core31", "PortProxyGUI - Core31\PortProxyGUI - Core31.csproj", "{2A54C624-1C2F-4ED7-B201-0E2981FB9CD9}"
+EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution Items", "{444021F3-829E-4682-ACD5-B57FA46CC534}"
+ ProjectSection(SolutionItems) = preProject
+ README.md = README.md
+ EndProjectSection
EndProject
Global
GlobalSection(SharedMSBuildProjectFiles) = preSolution
PortProxyGUI.Shared\PortProxyGUI.Shared.projitems*{1b166039-e98c-404a-89a5-c981364b5546}*SharedItemsImports = 4
+ PortProxyGUI.Shared\PortProxyGUI.Shared.projitems*{2a54c624-1c2f-4ed7-b201-0e2981fb9cd9}*SharedItemsImports = 5
PortProxyGUI.Shared\PortProxyGUI.Shared.projitems*{56fb1cbc-bd89-47d7-a9d5-86f02eef480f}*SharedItemsImports = 4
PortProxyGUI.Shared\PortProxyGUI.Shared.projitems*{7459e9f4-8b98-42d6-92cf-e90961e05c90}*SharedItemsImports = 5
PortProxyGUI.Shared\PortProxyGUI.Shared.projitems*{b38ef2b9-e38d-4d6d-bf0d-7c1934d6cfdc}*SharedItemsImports = 13
@@ -69,6 +76,18 @@ Global
{56FB1CBC-BD89-47D7-A9D5-86F02EEF480F}.Release|x64.Build.0 = Release|Any CPU
{56FB1CBC-BD89-47D7-A9D5-86F02EEF480F}.Release|x86.ActiveCfg = Release|Any CPU
{56FB1CBC-BD89-47D7-A9D5-86F02EEF480F}.Release|x86.Build.0 = Release|Any CPU
+ {2A54C624-1C2F-4ED7-B201-0E2981FB9CD9}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {2A54C624-1C2F-4ED7-B201-0E2981FB9CD9}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {2A54C624-1C2F-4ED7-B201-0E2981FB9CD9}.Debug|x64.ActiveCfg = Debug|Any CPU
+ {2A54C624-1C2F-4ED7-B201-0E2981FB9CD9}.Debug|x64.Build.0 = Debug|Any CPU
+ {2A54C624-1C2F-4ED7-B201-0E2981FB9CD9}.Debug|x86.ActiveCfg = Debug|Any CPU
+ {2A54C624-1C2F-4ED7-B201-0E2981FB9CD9}.Debug|x86.Build.0 = Debug|Any CPU
+ {2A54C624-1C2F-4ED7-B201-0E2981FB9CD9}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {2A54C624-1C2F-4ED7-B201-0E2981FB9CD9}.Release|Any CPU.Build.0 = Release|Any CPU
+ {2A54C624-1C2F-4ED7-B201-0E2981FB9CD9}.Release|x64.ActiveCfg = Release|Any CPU
+ {2A54C624-1C2F-4ED7-B201-0E2981FB9CD9}.Release|x64.Build.0 = Release|Any CPU
+ {2A54C624-1C2F-4ED7-B201-0E2981FB9CD9}.Release|x86.ActiveCfg = Release|Any CPU
+ {2A54C624-1C2F-4ED7-B201-0E2981FB9CD9}.Release|x86.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
diff --git a/PortProxyGUI/PortProxyGUI.csproj b/PortProxyGUI/PortProxyGUI.csproj
index a78cfff..6f38aa3 100644
--- a/PortProxyGUI/PortProxyGUI.csproj
+++ b/PortProxyGUI/PortProxyGUI.csproj
@@ -2,7 +2,7 @@
WinExe
- netcoreapp3.1
+ net6.0-windows
true
app.manifest
zmjack
@@ -14,7 +14,7 @@
portproxy TCP/IP redirector
LICENSE.md
Copyright © nstandard.net 2020
- 1.2.0
+ 1.3.0
icon.ico
@@ -28,6 +28,24 @@
AnyCPU
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
True
@@ -40,25 +58,9 @@
-
- Form
-
Form
-
- Form
-
-
-
-
-
- Designer
-
-
- SetProxyForm.Designer.cs
- ResXFileCodeGenerator
-
diff --git a/PortProxyGUI/Program.cs b/PortProxyGUI/Program.cs
index 02d1d48..42277c3 100644
--- a/PortProxyGUI/Program.cs
+++ b/PortProxyGUI/Program.cs
@@ -15,9 +15,10 @@ namespace PortProxyGUI
static void Main()
{
SqliteDbScope.Migrate();
- Application.SetHighDpiMode(HighDpiMode.SystemAware);
- Application.EnableVisualStyles();
- Application.SetCompatibleTextRenderingDefault(false);
+
+ // To customize application configuration such as set high DPI settings or default font,
+ // see https://aka.ms/applicationconfiguration.
+ ApplicationConfiguration.Initialize();
Application.Run(new PortProxyGUI());
}
}
diff --git a/docs/ui.png b/docs/ui.png
index ce1bd3c..655a28a 100644
Binary files a/docs/ui.png and b/docs/ui.png differ