diff --git a/Netch/Controllers/NFController.cs b/Netch/Controllers/NFController.cs
index 57a37fee..798705de 100644
--- a/Netch/Controllers/NFController.cs
+++ b/Netch/Controllers/NFController.cs
@@ -55,8 +55,11 @@ namespace Netch.Controllers
#region aio_dial
aio_dial((int) NameList.TYPE_FILTERLOOPBACK, "false");
- aio_dial((int) NameList.TYPE_FILTERTCP, "true");
aio_dial((int) NameList.TYPE_TCPLISN, Global.Settings.RedirectorTCPPort.ToString());
+
+ if (Global.Settings.ProcessNoProxyForUdp && Global.Settings.ProcessNoProxyForTcp) MessageBoxX.Show("?");
+
+ //UDP
if (Global.Settings.ProcessNoProxyForUdp)
{
aio_dial((int) NameList.TYPE_FILTERUDP, "false");
@@ -68,6 +71,18 @@ namespace Netch.Controllers
SetServer(PortType.Both);
}
+ //TCP
+ if (Global.Settings.ProcessNoProxyForTcp)
+ {
+ aio_dial((int) NameList.TYPE_FILTERTCP, "false");
+ SetServer(PortType.UDP);
+ }
+ else
+ {
+ aio_dial((int) NameList.TYPE_FILTERTCP, "true");
+ SetServer(PortType.Both);
+ }
+
if (!CheckRule(mode.FullRule, out var list))
{
MessageBoxX.Show($"\"{string.Join("", list.Select(s => s + "\n"))}\" does not conform to C++ regular expression syntax");
diff --git a/Netch/Forms/SettingForm.Designer.cs b/Netch/Forms/SettingForm.Designer.cs
index 02e667bf..04faff4a 100644
--- a/Netch/Forms/SettingForm.Designer.cs
+++ b/Netch/Forms/SettingForm.Designer.cs
@@ -56,6 +56,8 @@ namespace Netch.Forms
this.LanguageLabel = new System.Windows.Forms.Label();
this.LanguageComboBox = new System.Windows.Forms.ComboBox();
this.NFTabPage = new System.Windows.Forms.TabPage();
+ this.NoProxyForTcpCheckBox = new System.Windows.Forms.CheckBox();
+ this.NoProxyForUdpCheckBox = new System.Windows.Forms.CheckBox();
this.ModifySystemDNSCheckBox = new System.Windows.Forms.CheckBox();
this.ModifiedDNSLabel = new System.Windows.Forms.Label();
this.ModifiedDNSTextBox = new System.Windows.Forms.TextBox();
@@ -110,7 +112,6 @@ namespace Netch.Forms
this.OtherDNSTextBox = new System.Windows.Forms.TextBox();
this.ControlButton = new System.Windows.Forms.Button();
this.flowLayoutPanel1 = new System.Windows.Forms.FlowLayoutPanel();
- this.NoProxyForUdpCheckBox = new System.Windows.Forms.CheckBox();
this.TabControl.SuspendLayout();
this.GeneralTabPage.SuspendLayout();
this.PortGroupBox.SuspendLayout();
@@ -133,11 +134,10 @@ namespace Netch.Forms
this.TabControl.Controls.Add(this.v2rayTabPage);
this.TabControl.Controls.Add(this.OtherTabPage);
this.TabControl.Controls.Add(this.AioDNSTabPage);
- this.TabControl.Location = new System.Drawing.Point(4, 4);
- this.TabControl.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
+ this.TabControl.Location = new System.Drawing.Point(3, 3);
this.TabControl.Name = "TabControl";
this.TabControl.SelectedIndex = 0;
- this.TabControl.Size = new System.Drawing.Size(586, 442);
+ this.TabControl.Size = new System.Drawing.Size(469, 354);
this.TabControl.TabIndex = 0;
//
// GeneralTabPage
@@ -157,11 +157,10 @@ namespace Netch.Forms
this.GeneralTabPage.Controls.Add(this.AclAddrTextBox);
this.GeneralTabPage.Controls.Add(this.LanguageLabel);
this.GeneralTabPage.Controls.Add(this.LanguageComboBox);
- this.GeneralTabPage.Location = new System.Drawing.Point(4, 33);
- this.GeneralTabPage.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
+ this.GeneralTabPage.Location = new System.Drawing.Point(4, 25);
this.GeneralTabPage.Name = "GeneralTabPage";
- this.GeneralTabPage.Padding = new System.Windows.Forms.Padding(4, 4, 4, 4);
- this.GeneralTabPage.Size = new System.Drawing.Size(578, 405);
+ this.GeneralTabPage.Padding = new System.Windows.Forms.Padding(3);
+ this.GeneralTabPage.Size = new System.Drawing.Size(461, 325);
this.GeneralTabPage.TabIndex = 0;
this.GeneralTabPage.Text = "General";
//
@@ -174,11 +173,9 @@ namespace Netch.Forms
this.PortGroupBox.Controls.Add(this.RedirectorLabel);
this.PortGroupBox.Controls.Add(this.RedirectorTextBox);
this.PortGroupBox.Controls.Add(this.AllowDevicesCheckBox);
- this.PortGroupBox.Location = new System.Drawing.Point(10, 8);
- this.PortGroupBox.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
+ this.PortGroupBox.Location = new System.Drawing.Point(8, 6);
this.PortGroupBox.Name = "PortGroupBox";
- this.PortGroupBox.Padding = new System.Windows.Forms.Padding(4, 4, 4, 4);
- this.PortGroupBox.Size = new System.Drawing.Size(301, 175);
+ this.PortGroupBox.Size = new System.Drawing.Size(241, 140);
this.PortGroupBox.TabIndex = 0;
this.PortGroupBox.TabStop = false;
this.PortGroupBox.Text = "Local Port";
@@ -186,67 +183,60 @@ namespace Netch.Forms
// Socks5PortLabel
//
this.Socks5PortLabel.AutoSize = true;
- this.Socks5PortLabel.Location = new System.Drawing.Point(11, 31);
- this.Socks5PortLabel.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
+ this.Socks5PortLabel.Location = new System.Drawing.Point(9, 25);
this.Socks5PortLabel.Name = "Socks5PortLabel";
- this.Socks5PortLabel.Size = new System.Drawing.Size(55, 15);
+ this.Socks5PortLabel.Size = new System.Drawing.Size(41, 12);
this.Socks5PortLabel.TabIndex = 0;
this.Socks5PortLabel.Text = "Socks5";
//
// Socks5PortTextBox
//
- this.Socks5PortTextBox.Location = new System.Drawing.Point(150, 28);
- this.Socks5PortTextBox.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
+ this.Socks5PortTextBox.Location = new System.Drawing.Point(120, 22);
this.Socks5PortTextBox.Name = "Socks5PortTextBox";
- this.Socks5PortTextBox.Size = new System.Drawing.Size(112, 25);
+ this.Socks5PortTextBox.Size = new System.Drawing.Size(90, 21);
this.Socks5PortTextBox.TabIndex = 1;
this.Socks5PortTextBox.TextAlign = System.Windows.Forms.HorizontalAlignment.Center;
//
// HTTPPortLabel
//
this.HTTPPortLabel.AutoSize = true;
- this.HTTPPortLabel.Location = new System.Drawing.Point(11, 68);
- this.HTTPPortLabel.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
+ this.HTTPPortLabel.Location = new System.Drawing.Point(9, 54);
this.HTTPPortLabel.Name = "HTTPPortLabel";
- this.HTTPPortLabel.Size = new System.Drawing.Size(39, 15);
+ this.HTTPPortLabel.Size = new System.Drawing.Size(29, 12);
this.HTTPPortLabel.TabIndex = 2;
this.HTTPPortLabel.Text = "HTTP";
//
// HTTPPortTextBox
//
- this.HTTPPortTextBox.Location = new System.Drawing.Point(150, 64);
- this.HTTPPortTextBox.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
+ this.HTTPPortTextBox.Location = new System.Drawing.Point(120, 51);
this.HTTPPortTextBox.Name = "HTTPPortTextBox";
- this.HTTPPortTextBox.Size = new System.Drawing.Size(112, 25);
+ this.HTTPPortTextBox.Size = new System.Drawing.Size(90, 21);
this.HTTPPortTextBox.TabIndex = 3;
this.HTTPPortTextBox.TextAlign = System.Windows.Forms.HorizontalAlignment.Center;
//
// RedirectorLabel
//
this.RedirectorLabel.AutoSize = true;
- this.RedirectorLabel.Location = new System.Drawing.Point(11, 104);
- this.RedirectorLabel.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
+ this.RedirectorLabel.Location = new System.Drawing.Point(9, 83);
this.RedirectorLabel.Name = "RedirectorLabel";
- this.RedirectorLabel.Size = new System.Drawing.Size(119, 15);
+ this.RedirectorLabel.Size = new System.Drawing.Size(89, 12);
this.RedirectorLabel.TabIndex = 4;
this.RedirectorLabel.Text = "Redirector TCP";
//
// RedirectorTextBox
//
- this.RedirectorTextBox.Location = new System.Drawing.Point(150, 100);
- this.RedirectorTextBox.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
+ this.RedirectorTextBox.Location = new System.Drawing.Point(120, 80);
this.RedirectorTextBox.Name = "RedirectorTextBox";
- this.RedirectorTextBox.Size = new System.Drawing.Size(112, 25);
+ this.RedirectorTextBox.Size = new System.Drawing.Size(90, 21);
this.RedirectorTextBox.TabIndex = 5;
this.RedirectorTextBox.TextAlign = System.Windows.Forms.HorizontalAlignment.Center;
//
// AllowDevicesCheckBox
//
this.AllowDevicesCheckBox.AutoSize = true;
- this.AllowDevicesCheckBox.Location = new System.Drawing.Point(8, 134);
- this.AllowDevicesCheckBox.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
+ this.AllowDevicesCheckBox.Location = new System.Drawing.Point(6, 107);
this.AllowDevicesCheckBox.Name = "AllowDevicesCheckBox";
- this.AllowDevicesCheckBox.Size = new System.Drawing.Size(269, 19);
+ this.AllowDevicesCheckBox.Size = new System.Drawing.Size(204, 16);
this.AllowDevicesCheckBox.TabIndex = 6;
this.AllowDevicesCheckBox.Text = "Allow other Devices to connect";
this.AllowDevicesCheckBox.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
@@ -255,10 +245,9 @@ namespace Netch.Forms
// BootShadowsocksFromDLLCheckBox
//
this.BootShadowsocksFromDLLCheckBox.AutoSize = true;
- this.BootShadowsocksFromDLLCheckBox.Location = new System.Drawing.Point(334, 19);
- this.BootShadowsocksFromDLLCheckBox.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
+ this.BootShadowsocksFromDLLCheckBox.Location = new System.Drawing.Point(267, 15);
this.BootShadowsocksFromDLLCheckBox.Name = "BootShadowsocksFromDLLCheckBox";
- this.BootShadowsocksFromDLLCheckBox.Size = new System.Drawing.Size(77, 19);
+ this.BootShadowsocksFromDLLCheckBox.Size = new System.Drawing.Size(60, 16);
this.BootShadowsocksFromDLLCheckBox.TabIndex = 1;
this.BootShadowsocksFromDLLCheckBox.Text = "SS DLL";
this.BootShadowsocksFromDLLCheckBox.UseVisualStyleBackColor = true;
@@ -266,10 +255,9 @@ namespace Netch.Forms
// ResolveServerHostnameCheckBox
//
this.ResolveServerHostnameCheckBox.AutoSize = true;
- this.ResolveServerHostnameCheckBox.Location = new System.Drawing.Point(332, 52);
- this.ResolveServerHostnameCheckBox.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
+ this.ResolveServerHostnameCheckBox.Location = new System.Drawing.Point(267, 37);
this.ResolveServerHostnameCheckBox.Name = "ResolveServerHostnameCheckBox";
- this.ResolveServerHostnameCheckBox.Size = new System.Drawing.Size(213, 19);
+ this.ResolveServerHostnameCheckBox.Size = new System.Drawing.Size(162, 16);
this.ResolveServerHostnameCheckBox.TabIndex = 2;
this.ResolveServerHostnameCheckBox.Text = "Resolve Server Hostname";
this.ResolveServerHostnameCheckBox.UseVisualStyleBackColor = true;
@@ -277,29 +265,26 @@ namespace Netch.Forms
// ProfileCountLabel
//
this.ProfileCountLabel.AutoSize = true;
- this.ProfileCountLabel.Location = new System.Drawing.Point(15, 200);
- this.ProfileCountLabel.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
+ this.ProfileCountLabel.Location = new System.Drawing.Point(12, 160);
this.ProfileCountLabel.Name = "ProfileCountLabel";
- this.ProfileCountLabel.Size = new System.Drawing.Size(103, 15);
+ this.ProfileCountLabel.Size = new System.Drawing.Size(77, 12);
this.ProfileCountLabel.TabIndex = 3;
this.ProfileCountLabel.Text = "ProfileCount";
//
// ProfileCountTextBox
//
- this.ProfileCountTextBox.Location = new System.Drawing.Point(150, 196);
- this.ProfileCountTextBox.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
+ this.ProfileCountTextBox.Location = new System.Drawing.Point(120, 157);
this.ProfileCountTextBox.Name = "ProfileCountTextBox";
- this.ProfileCountTextBox.Size = new System.Drawing.Size(112, 25);
+ this.ProfileCountTextBox.Size = new System.Drawing.Size(90, 21);
this.ProfileCountTextBox.TabIndex = 4;
this.ProfileCountTextBox.TextAlign = System.Windows.Forms.HorizontalAlignment.Center;
//
// TcpingAtStartedCheckBox
//
this.TcpingAtStartedCheckBox.AutoSize = true;
- this.TcpingAtStartedCheckBox.Location = new System.Drawing.Point(19, 232);
- this.TcpingAtStartedCheckBox.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
+ this.TcpingAtStartedCheckBox.Location = new System.Drawing.Point(15, 186);
this.TcpingAtStartedCheckBox.Name = "TcpingAtStartedCheckBox";
- this.TcpingAtStartedCheckBox.Size = new System.Drawing.Size(205, 19);
+ this.TcpingAtStartedCheckBox.Size = new System.Drawing.Size(156, 16);
this.TcpingAtStartedCheckBox.TabIndex = 5;
this.TcpingAtStartedCheckBox.Text = "Delay test after start";
this.TcpingAtStartedCheckBox.UseVisualStyleBackColor = true;
@@ -307,67 +292,60 @@ namespace Netch.Forms
// DetectionIntervalLabel
//
this.DetectionIntervalLabel.AutoSize = true;
- this.DetectionIntervalLabel.Location = new System.Drawing.Point(285, 234);
- this.DetectionIntervalLabel.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
+ this.DetectionIntervalLabel.Location = new System.Drawing.Point(228, 187);
this.DetectionIntervalLabel.Name = "DetectionIntervalLabel";
- this.DetectionIntervalLabel.Size = new System.Drawing.Size(191, 15);
+ this.DetectionIntervalLabel.Size = new System.Drawing.Size(143, 12);
this.DetectionIntervalLabel.TabIndex = 6;
this.DetectionIntervalLabel.Text = "Detection interval(sec)";
//
// DetectionIntervalTextBox
//
- this.DetectionIntervalTextBox.Location = new System.Drawing.Point(458, 230);
- this.DetectionIntervalTextBox.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
+ this.DetectionIntervalTextBox.Location = new System.Drawing.Point(366, 184);
this.DetectionIntervalTextBox.Name = "DetectionIntervalTextBox";
- this.DetectionIntervalTextBox.Size = new System.Drawing.Size(84, 25);
+ this.DetectionIntervalTextBox.Size = new System.Drawing.Size(68, 21);
this.DetectionIntervalTextBox.TabIndex = 7;
this.DetectionIntervalTextBox.TextAlign = System.Windows.Forms.HorizontalAlignment.Center;
//
// STUNServerLabel
//
this.STUNServerLabel.AutoSize = true;
- this.STUNServerLabel.Location = new System.Drawing.Point(15, 270);
- this.STUNServerLabel.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
+ this.STUNServerLabel.Location = new System.Drawing.Point(12, 216);
this.STUNServerLabel.Name = "STUNServerLabel";
- this.STUNServerLabel.Size = new System.Drawing.Size(95, 15);
+ this.STUNServerLabel.Size = new System.Drawing.Size(71, 12);
this.STUNServerLabel.TabIndex = 8;
this.STUNServerLabel.Text = "STUN Server";
//
// STUN_ServerComboBox
//
this.STUN_ServerComboBox.AutoCompleteMode = System.Windows.Forms.AutoCompleteMode.Suggest;
- this.STUN_ServerComboBox.Location = new System.Drawing.Point(150, 266);
- this.STUN_ServerComboBox.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
+ this.STUN_ServerComboBox.Location = new System.Drawing.Point(120, 213);
this.STUN_ServerComboBox.Name = "STUN_ServerComboBox";
- this.STUN_ServerComboBox.Size = new System.Drawing.Size(392, 28);
+ this.STUN_ServerComboBox.Size = new System.Drawing.Size(314, 20);
this.STUN_ServerComboBox.TabIndex = 9;
//
// AclLabel
//
this.AclLabel.AutoSize = true;
- this.AclLabel.Location = new System.Drawing.Point(15, 310);
- this.AclLabel.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
+ this.AclLabel.Location = new System.Drawing.Point(12, 248);
this.AclLabel.Name = "AclLabel";
- this.AclLabel.Size = new System.Drawing.Size(87, 15);
+ this.AclLabel.Size = new System.Drawing.Size(65, 12);
this.AclLabel.TabIndex = 10;
this.AclLabel.Text = "Custom ACL";
//
// AclAddrTextBox
//
- this.AclAddrTextBox.Location = new System.Drawing.Point(150, 306);
- this.AclAddrTextBox.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
+ this.AclAddrTextBox.Location = new System.Drawing.Point(120, 245);
this.AclAddrTextBox.Name = "AclAddrTextBox";
- this.AclAddrTextBox.Size = new System.Drawing.Size(393, 25);
+ this.AclAddrTextBox.Size = new System.Drawing.Size(315, 21);
this.AclAddrTextBox.TabIndex = 11;
this.AclAddrTextBox.TextAlign = System.Windows.Forms.HorizontalAlignment.Center;
//
// LanguageLabel
//
this.LanguageLabel.AutoSize = true;
- this.LanguageLabel.Location = new System.Drawing.Point(15, 346);
- this.LanguageLabel.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
+ this.LanguageLabel.Location = new System.Drawing.Point(12, 277);
this.LanguageLabel.Name = "LanguageLabel";
- this.LanguageLabel.Size = new System.Drawing.Size(71, 15);
+ this.LanguageLabel.Size = new System.Drawing.Size(53, 12);
this.LanguageLabel.TabIndex = 12;
this.LanguageLabel.Text = "Language";
//
@@ -375,35 +353,53 @@ namespace Netch.Forms
//
this.LanguageComboBox.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
this.LanguageComboBox.FormattingEnabled = true;
- this.LanguageComboBox.Location = new System.Drawing.Point(150, 342);
- this.LanguageComboBox.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
+ this.LanguageComboBox.Location = new System.Drawing.Point(120, 274);
this.LanguageComboBox.Name = "LanguageComboBox";
- this.LanguageComboBox.Size = new System.Drawing.Size(150, 28);
+ this.LanguageComboBox.Size = new System.Drawing.Size(121, 20);
this.LanguageComboBox.TabIndex = 13;
//
// NFTabPage
//
this.NFTabPage.BackColor = System.Drawing.SystemColors.ButtonFace;
+ this.NFTabPage.Controls.Add(this.NoProxyForTcpCheckBox);
this.NFTabPage.Controls.Add(this.NoProxyForUdpCheckBox);
this.NFTabPage.Controls.Add(this.ModifySystemDNSCheckBox);
this.NFTabPage.Controls.Add(this.ModifiedDNSLabel);
this.NFTabPage.Controls.Add(this.ModifiedDNSTextBox);
this.NFTabPage.Controls.Add(this.RedirectorSSCheckBox);
- this.NFTabPage.Location = new System.Drawing.Point(4, 33);
- this.NFTabPage.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
+ this.NFTabPage.Location = new System.Drawing.Point(4, 25);
this.NFTabPage.Name = "NFTabPage";
- this.NFTabPage.Padding = new System.Windows.Forms.Padding(4, 4, 4, 4);
- this.NFTabPage.Size = new System.Drawing.Size(578, 405);
+ this.NFTabPage.Padding = new System.Windows.Forms.Padding(3);
+ this.NFTabPage.Size = new System.Drawing.Size(461, 325);
this.NFTabPage.TabIndex = 1;
this.NFTabPage.Text = "Process Mode";
//
+ // NoProxyForTcpCheckBox
+ //
+ this.NoProxyForTcpCheckBox.AutoSize = true;
+ this.NoProxyForTcpCheckBox.Location = new System.Drawing.Point(8, 82);
+ this.NoProxyForTcpCheckBox.Name = "NoProxyForTcpCheckBox";
+ this.NoProxyForTcpCheckBox.Size = new System.Drawing.Size(120, 16);
+ this.NoProxyForTcpCheckBox.TabIndex = 4;
+ this.NoProxyForTcpCheckBox.Text = "No Proxy for Tcp";
+ this.NoProxyForTcpCheckBox.UseVisualStyleBackColor = true;
+ //
+ // NoProxyForUdpCheckBox
+ //
+ this.NoProxyForUdpCheckBox.AutoSize = true;
+ this.NoProxyForUdpCheckBox.Location = new System.Drawing.Point(8, 60);
+ this.NoProxyForUdpCheckBox.Name = "NoProxyForUdpCheckBox";
+ this.NoProxyForUdpCheckBox.Size = new System.Drawing.Size(120, 16);
+ this.NoProxyForUdpCheckBox.TabIndex = 3;
+ this.NoProxyForUdpCheckBox.Text = "No Proxy for Udp";
+ this.NoProxyForUdpCheckBox.UseVisualStyleBackColor = true;
+ //
// ModifySystemDNSCheckBox
//
this.ModifySystemDNSCheckBox.AutoSize = true;
- this.ModifySystemDNSCheckBox.Location = new System.Drawing.Point(10, 20);
- this.ModifySystemDNSCheckBox.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
+ this.ModifySystemDNSCheckBox.Location = new System.Drawing.Point(8, 16);
this.ModifySystemDNSCheckBox.Name = "ModifySystemDNSCheckBox";
- this.ModifySystemDNSCheckBox.Size = new System.Drawing.Size(165, 19);
+ this.ModifySystemDNSCheckBox.Size = new System.Drawing.Size(126, 16);
this.ModifySystemDNSCheckBox.TabIndex = 0;
this.ModifySystemDNSCheckBox.Text = "Modify System DNS";
this.ModifySystemDNSCheckBox.UseVisualStyleBackColor = true;
@@ -412,29 +408,26 @@ namespace Netch.Forms
// ModifiedDNSLabel
//
this.ModifiedDNSLabel.AutoSize = true;
- this.ModifiedDNSLabel.Location = new System.Drawing.Point(30, 51);
- this.ModifiedDNSLabel.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
+ this.ModifiedDNSLabel.Location = new System.Drawing.Point(223, 17);
this.ModifiedDNSLabel.Name = "ModifiedDNSLabel";
- this.ModifiedDNSLabel.Size = new System.Drawing.Size(31, 15);
+ this.ModifiedDNSLabel.Size = new System.Drawing.Size(23, 12);
this.ModifiedDNSLabel.TabIndex = 2;
this.ModifiedDNSLabel.Text = "DNS";
//
// ModifiedDNSTextBox
//
- this.ModifiedDNSTextBox.Location = new System.Drawing.Point(124, 48);
- this.ModifiedDNSTextBox.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
+ this.ModifiedDNSTextBox.Location = new System.Drawing.Point(264, 14);
this.ModifiedDNSTextBox.Name = "ModifiedDNSTextBox";
- this.ModifiedDNSTextBox.Size = new System.Drawing.Size(242, 25);
+ this.ModifiedDNSTextBox.Size = new System.Drawing.Size(194, 21);
this.ModifiedDNSTextBox.TabIndex = 1;
this.ModifiedDNSTextBox.TextAlign = System.Windows.Forms.HorizontalAlignment.Center;
//
// RedirectorSSCheckBox
//
this.RedirectorSSCheckBox.AutoSize = true;
- this.RedirectorSSCheckBox.Location = new System.Drawing.Point(10, 81);
- this.RedirectorSSCheckBox.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
+ this.RedirectorSSCheckBox.Location = new System.Drawing.Point(8, 38);
this.RedirectorSSCheckBox.Name = "RedirectorSSCheckBox";
- this.RedirectorSSCheckBox.Size = new System.Drawing.Size(133, 19);
+ this.RedirectorSSCheckBox.Size = new System.Drawing.Size(102, 16);
this.RedirectorSSCheckBox.TabIndex = 0;
this.RedirectorSSCheckBox.Text = "Redirector SS";
this.RedirectorSSCheckBox.UseVisualStyleBackColor = true;
@@ -445,11 +438,10 @@ namespace Netch.Forms
this.TAPTabPage.BackColor = System.Drawing.SystemColors.ButtonFace;
this.TAPTabPage.Controls.Add(this.TUNTAPGroupBox);
this.TAPTabPage.Controls.Add(this.GlobalBypassIPsButton);
- this.TAPTabPage.Location = new System.Drawing.Point(4, 33);
- this.TAPTabPage.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
+ this.TAPTabPage.Location = new System.Drawing.Point(4, 25);
this.TAPTabPage.Name = "TAPTabPage";
- this.TAPTabPage.Padding = new System.Windows.Forms.Padding(4, 4, 4, 4);
- this.TAPTabPage.Size = new System.Drawing.Size(578, 405);
+ this.TAPTabPage.Padding = new System.Windows.Forms.Padding(3);
+ this.TAPTabPage.Size = new System.Drawing.Size(461, 325);
this.TAPTabPage.TabIndex = 2;
this.TAPTabPage.Text = "TUN/TAP";
//
@@ -467,11 +459,9 @@ namespace Netch.Forms
this.TUNTAPGroupBox.Controls.Add(this.ProxyDNSCheckBox);
this.TUNTAPGroupBox.Controls.Add(this.UseFakeDNSCheckBox);
this.TUNTAPGroupBox.Controls.Add(this.ICSCheckBox);
- this.TUNTAPGroupBox.Location = new System.Drawing.Point(8, 8);
- this.TUNTAPGroupBox.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
+ this.TUNTAPGroupBox.Location = new System.Drawing.Point(6, 6);
this.TUNTAPGroupBox.Name = "TUNTAPGroupBox";
- this.TUNTAPGroupBox.Padding = new System.Windows.Forms.Padding(4, 4, 4, 4);
- this.TUNTAPGroupBox.Size = new System.Drawing.Size(525, 234);
+ this.TUNTAPGroupBox.Size = new System.Drawing.Size(420, 187);
this.TUNTAPGroupBox.TabIndex = 0;
this.TUNTAPGroupBox.TabStop = false;
this.TUNTAPGroupBox.Text = "TUN/TAP";
@@ -479,86 +469,77 @@ namespace Netch.Forms
// TUNTAPAddressLabel
//
this.TUNTAPAddressLabel.AutoSize = true;
- this.TUNTAPAddressLabel.Location = new System.Drawing.Point(11, 31);
- this.TUNTAPAddressLabel.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
+ this.TUNTAPAddressLabel.Location = new System.Drawing.Point(9, 25);
this.TUNTAPAddressLabel.Name = "TUNTAPAddressLabel";
- this.TUNTAPAddressLabel.Size = new System.Drawing.Size(63, 15);
+ this.TUNTAPAddressLabel.Size = new System.Drawing.Size(47, 12);
this.TUNTAPAddressLabel.TabIndex = 0;
this.TUNTAPAddressLabel.Text = "Address";
//
// TUNTAPAddressTextBox
//
- this.TUNTAPAddressTextBox.Location = new System.Drawing.Point(150, 28);
- this.TUNTAPAddressTextBox.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
+ this.TUNTAPAddressTextBox.Location = new System.Drawing.Point(120, 22);
this.TUNTAPAddressTextBox.Name = "TUNTAPAddressTextBox";
- this.TUNTAPAddressTextBox.Size = new System.Drawing.Size(366, 25);
+ this.TUNTAPAddressTextBox.Size = new System.Drawing.Size(294, 21);
this.TUNTAPAddressTextBox.TabIndex = 1;
this.TUNTAPAddressTextBox.TextAlign = System.Windows.Forms.HorizontalAlignment.Center;
//
// TUNTAPNetmaskLabel
//
this.TUNTAPNetmaskLabel.AutoSize = true;
- this.TUNTAPNetmaskLabel.Location = new System.Drawing.Point(11, 68);
- this.TUNTAPNetmaskLabel.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
+ this.TUNTAPNetmaskLabel.Location = new System.Drawing.Point(9, 54);
this.TUNTAPNetmaskLabel.Name = "TUNTAPNetmaskLabel";
- this.TUNTAPNetmaskLabel.Size = new System.Drawing.Size(63, 15);
+ this.TUNTAPNetmaskLabel.Size = new System.Drawing.Size(47, 12);
this.TUNTAPNetmaskLabel.TabIndex = 2;
this.TUNTAPNetmaskLabel.Text = "Netmask";
//
// TUNTAPNetmaskTextBox
//
- this.TUNTAPNetmaskTextBox.Location = new System.Drawing.Point(150, 64);
- this.TUNTAPNetmaskTextBox.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
+ this.TUNTAPNetmaskTextBox.Location = new System.Drawing.Point(120, 51);
this.TUNTAPNetmaskTextBox.Name = "TUNTAPNetmaskTextBox";
- this.TUNTAPNetmaskTextBox.Size = new System.Drawing.Size(366, 25);
+ this.TUNTAPNetmaskTextBox.Size = new System.Drawing.Size(294, 21);
this.TUNTAPNetmaskTextBox.TabIndex = 3;
this.TUNTAPNetmaskTextBox.TextAlign = System.Windows.Forms.HorizontalAlignment.Center;
//
// TUNTAPGatewayLabel
//
this.TUNTAPGatewayLabel.AutoSize = true;
- this.TUNTAPGatewayLabel.Location = new System.Drawing.Point(11, 104);
- this.TUNTAPGatewayLabel.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
+ this.TUNTAPGatewayLabel.Location = new System.Drawing.Point(9, 83);
this.TUNTAPGatewayLabel.Name = "TUNTAPGatewayLabel";
- this.TUNTAPGatewayLabel.Size = new System.Drawing.Size(63, 15);
+ this.TUNTAPGatewayLabel.Size = new System.Drawing.Size(47, 12);
this.TUNTAPGatewayLabel.TabIndex = 4;
this.TUNTAPGatewayLabel.Text = "Gateway";
//
// TUNTAPGatewayTextBox
//
- this.TUNTAPGatewayTextBox.Location = new System.Drawing.Point(150, 100);
- this.TUNTAPGatewayTextBox.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
+ this.TUNTAPGatewayTextBox.Location = new System.Drawing.Point(120, 80);
this.TUNTAPGatewayTextBox.Name = "TUNTAPGatewayTextBox";
- this.TUNTAPGatewayTextBox.Size = new System.Drawing.Size(366, 25);
+ this.TUNTAPGatewayTextBox.Size = new System.Drawing.Size(294, 21);
this.TUNTAPGatewayTextBox.TabIndex = 5;
this.TUNTAPGatewayTextBox.TextAlign = System.Windows.Forms.HorizontalAlignment.Center;
//
// TUNTAPDNSLabel
//
this.TUNTAPDNSLabel.AutoSize = true;
- this.TUNTAPDNSLabel.Location = new System.Drawing.Point(11, 140);
- this.TUNTAPDNSLabel.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
+ this.TUNTAPDNSLabel.Location = new System.Drawing.Point(9, 112);
this.TUNTAPDNSLabel.Name = "TUNTAPDNSLabel";
- this.TUNTAPDNSLabel.Size = new System.Drawing.Size(31, 15);
+ this.TUNTAPDNSLabel.Size = new System.Drawing.Size(23, 12);
this.TUNTAPDNSLabel.TabIndex = 6;
this.TUNTAPDNSLabel.Text = "DNS";
//
// TUNTAPDNSTextBox
//
- this.TUNTAPDNSTextBox.Location = new System.Drawing.Point(150, 138);
- this.TUNTAPDNSTextBox.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
+ this.TUNTAPDNSTextBox.Location = new System.Drawing.Point(120, 110);
this.TUNTAPDNSTextBox.Name = "TUNTAPDNSTextBox";
- this.TUNTAPDNSTextBox.Size = new System.Drawing.Size(366, 25);
+ this.TUNTAPDNSTextBox.Size = new System.Drawing.Size(294, 21);
this.TUNTAPDNSTextBox.TabIndex = 7;
this.TUNTAPDNSTextBox.TextAlign = System.Windows.Forms.HorizontalAlignment.Center;
//
// UseCustomDNSCheckBox
//
this.UseCustomDNSCheckBox.AutoSize = true;
- this.UseCustomDNSCheckBox.Location = new System.Drawing.Point(12, 174);
- this.UseCustomDNSCheckBox.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
+ this.UseCustomDNSCheckBox.Location = new System.Drawing.Point(10, 139);
this.UseCustomDNSCheckBox.Name = "UseCustomDNSCheckBox";
- this.UseCustomDNSCheckBox.Size = new System.Drawing.Size(141, 19);
+ this.UseCustomDNSCheckBox.Size = new System.Drawing.Size(108, 16);
this.UseCustomDNSCheckBox.TabIndex = 8;
this.UseCustomDNSCheckBox.Text = "Use Custom DNS";
this.UseCustomDNSCheckBox.UseVisualStyleBackColor = true;
@@ -567,10 +548,9 @@ namespace Netch.Forms
// ProxyDNSCheckBox
//
this.ProxyDNSCheckBox.AutoSize = true;
- this.ProxyDNSCheckBox.Location = new System.Drawing.Point(326, 174);
- this.ProxyDNSCheckBox.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
+ this.ProxyDNSCheckBox.Location = new System.Drawing.Point(261, 139);
this.ProxyDNSCheckBox.Name = "ProxyDNSCheckBox";
- this.ProxyDNSCheckBox.Size = new System.Drawing.Size(181, 19);
+ this.ProxyDNSCheckBox.Size = new System.Drawing.Size(138, 16);
this.ProxyDNSCheckBox.TabIndex = 9;
this.ProxyDNSCheckBox.Text = "Proxy DNS in Mode 2";
this.ProxyDNSCheckBox.UseVisualStyleBackColor = true;
@@ -578,10 +558,9 @@ namespace Netch.Forms
// UseFakeDNSCheckBox
//
this.UseFakeDNSCheckBox.AutoSize = true;
- this.UseFakeDNSCheckBox.Location = new System.Drawing.Point(12, 200);
- this.UseFakeDNSCheckBox.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
+ this.UseFakeDNSCheckBox.Location = new System.Drawing.Point(10, 160);
this.UseFakeDNSCheckBox.Name = "UseFakeDNSCheckBox";
- this.UseFakeDNSCheckBox.Size = new System.Drawing.Size(125, 19);
+ this.UseFakeDNSCheckBox.Size = new System.Drawing.Size(96, 16);
this.UseFakeDNSCheckBox.TabIndex = 10;
this.UseFakeDNSCheckBox.Text = "Use Fake DNS";
this.UseFakeDNSCheckBox.UseVisualStyleBackColor = true;
@@ -591,10 +570,9 @@ namespace Netch.Forms
//
this.ICSCheckBox.AutoSize = true;
this.ICSCheckBox.Enabled = false;
- this.ICSCheckBox.Location = new System.Drawing.Point(326, 200);
- this.ICSCheckBox.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
+ this.ICSCheckBox.Location = new System.Drawing.Point(261, 160);
this.ICSCheckBox.Name = "ICSCheckBox";
- this.ICSCheckBox.Size = new System.Drawing.Size(181, 19);
+ this.ICSCheckBox.Size = new System.Drawing.Size(138, 16);
this.ICSCheckBox.TabIndex = 11;
this.ICSCheckBox.Text = "Tap Network Sharing";
this.ICSCheckBox.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
@@ -603,10 +581,9 @@ namespace Netch.Forms
//
// GlobalBypassIPsButton
//
- this.GlobalBypassIPsButton.Location = new System.Drawing.Point(8, 249);
- this.GlobalBypassIPsButton.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
+ this.GlobalBypassIPsButton.Location = new System.Drawing.Point(6, 199);
this.GlobalBypassIPsButton.Name = "GlobalBypassIPsButton";
- this.GlobalBypassIPsButton.Size = new System.Drawing.Size(160, 29);
+ this.GlobalBypassIPsButton.Size = new System.Drawing.Size(128, 23);
this.GlobalBypassIPsButton.TabIndex = 1;
this.GlobalBypassIPsButton.Text = "Global Bypass IPs";
this.GlobalBypassIPsButton.UseVisualStyleBackColor = true;
@@ -618,21 +595,19 @@ namespace Netch.Forms
this.v2rayTabPage.Controls.Add(this.TLSAllowInsecureCheckBox);
this.v2rayTabPage.Controls.Add(this.UseMuxCheckBox);
this.v2rayTabPage.Controls.Add(this.KCPGroupBox);
- this.v2rayTabPage.Location = new System.Drawing.Point(4, 33);
- this.v2rayTabPage.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
+ this.v2rayTabPage.Location = new System.Drawing.Point(4, 25);
this.v2rayTabPage.Name = "v2rayTabPage";
- this.v2rayTabPage.Padding = new System.Windows.Forms.Padding(4, 4, 4, 4);
- this.v2rayTabPage.Size = new System.Drawing.Size(578, 405);
+ this.v2rayTabPage.Padding = new System.Windows.Forms.Padding(3);
+ this.v2rayTabPage.Size = new System.Drawing.Size(461, 325);
this.v2rayTabPage.TabIndex = 3;
this.v2rayTabPage.Text = "V2Ray";
//
// TLSAllowInsecureCheckBox
//
this.TLSAllowInsecureCheckBox.AutoSize = true;
- this.TLSAllowInsecureCheckBox.Location = new System.Drawing.Point(8, 19);
- this.TLSAllowInsecureCheckBox.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
+ this.TLSAllowInsecureCheckBox.Location = new System.Drawing.Point(6, 15);
this.TLSAllowInsecureCheckBox.Name = "TLSAllowInsecureCheckBox";
- this.TLSAllowInsecureCheckBox.Size = new System.Drawing.Size(165, 19);
+ this.TLSAllowInsecureCheckBox.Size = new System.Drawing.Size(126, 16);
this.TLSAllowInsecureCheckBox.TabIndex = 0;
this.TLSAllowInsecureCheckBox.Text = "TLS AllowInsecure";
this.TLSAllowInsecureCheckBox.UseVisualStyleBackColor = true;
@@ -640,10 +615,9 @@ namespace Netch.Forms
// UseMuxCheckBox
//
this.UseMuxCheckBox.AutoSize = true;
- this.UseMuxCheckBox.Location = new System.Drawing.Point(185, 19);
- this.UseMuxCheckBox.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
+ this.UseMuxCheckBox.Location = new System.Drawing.Point(148, 15);
this.UseMuxCheckBox.Name = "UseMuxCheckBox";
- this.UseMuxCheckBox.Size = new System.Drawing.Size(85, 19);
+ this.UseMuxCheckBox.Size = new System.Drawing.Size(66, 16);
this.UseMuxCheckBox.TabIndex = 1;
this.UseMuxCheckBox.Text = "Use Mux";
this.UseMuxCheckBox.UseVisualStyleBackColor = true;
@@ -663,11 +637,9 @@ namespace Netch.Forms
this.KCPGroupBox.Controls.Add(this.writeBufferSizeLabel);
this.KCPGroupBox.Controls.Add(this.writeBufferSizeTextBox);
this.KCPGroupBox.Controls.Add(this.congestionCheckBox);
- this.KCPGroupBox.Location = new System.Drawing.Point(11, 60);
- this.KCPGroupBox.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
+ this.KCPGroupBox.Location = new System.Drawing.Point(9, 48);
this.KCPGroupBox.Name = "KCPGroupBox";
- this.KCPGroupBox.Padding = new System.Windows.Forms.Padding(4, 4, 4, 4);
- this.KCPGroupBox.Size = new System.Drawing.Size(534, 255);
+ this.KCPGroupBox.Size = new System.Drawing.Size(427, 204);
this.KCPGroupBox.TabIndex = 2;
this.KCPGroupBox.TabStop = false;
this.KCPGroupBox.Text = "KCP";
@@ -675,124 +647,111 @@ namespace Netch.Forms
// mtuLabel
//
this.mtuLabel.AutoSize = true;
- this.mtuLabel.Location = new System.Drawing.Point(8, 32);
- this.mtuLabel.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
+ this.mtuLabel.Location = new System.Drawing.Point(6, 26);
this.mtuLabel.Name = "mtuLabel";
- this.mtuLabel.Size = new System.Drawing.Size(31, 15);
+ this.mtuLabel.Size = new System.Drawing.Size(23, 12);
this.mtuLabel.TabIndex = 0;
this.mtuLabel.Text = "mtu";
//
// mtuTextBox
//
- this.mtuTextBox.Location = new System.Drawing.Point(129, 21);
- this.mtuTextBox.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
+ this.mtuTextBox.Location = new System.Drawing.Point(103, 17);
this.mtuTextBox.Name = "mtuTextBox";
- this.mtuTextBox.Size = new System.Drawing.Size(112, 25);
+ this.mtuTextBox.Size = new System.Drawing.Size(90, 21);
this.mtuTextBox.TabIndex = 1;
this.mtuTextBox.TextAlign = System.Windows.Forms.HorizontalAlignment.Center;
//
// ttiLabel
//
this.ttiLabel.AutoSize = true;
- this.ttiLabel.Location = new System.Drawing.Point(280, 32);
- this.ttiLabel.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
+ this.ttiLabel.Location = new System.Drawing.Point(224, 26);
this.ttiLabel.Name = "ttiLabel";
- this.ttiLabel.Size = new System.Drawing.Size(31, 15);
+ this.ttiLabel.Size = new System.Drawing.Size(23, 12);
this.ttiLabel.TabIndex = 2;
this.ttiLabel.Text = "tti";
//
// ttiTextBox
//
- this.ttiTextBox.Location = new System.Drawing.Point(414, 21);
- this.ttiTextBox.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
+ this.ttiTextBox.Location = new System.Drawing.Point(331, 17);
this.ttiTextBox.Name = "ttiTextBox";
- this.ttiTextBox.Size = new System.Drawing.Size(112, 25);
+ this.ttiTextBox.Size = new System.Drawing.Size(90, 21);
this.ttiTextBox.TabIndex = 3;
this.ttiTextBox.TextAlign = System.Windows.Forms.HorizontalAlignment.Center;
//
// uplinkCapacityLabel
//
this.uplinkCapacityLabel.AutoSize = true;
- this.uplinkCapacityLabel.Location = new System.Drawing.Point(8, 85);
- this.uplinkCapacityLabel.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
+ this.uplinkCapacityLabel.Location = new System.Drawing.Point(6, 68);
this.uplinkCapacityLabel.Name = "uplinkCapacityLabel";
- this.uplinkCapacityLabel.Size = new System.Drawing.Size(119, 15);
+ this.uplinkCapacityLabel.Size = new System.Drawing.Size(89, 12);
this.uplinkCapacityLabel.TabIndex = 4;
this.uplinkCapacityLabel.Text = "uplinkCapacity";
//
// uplinkCapacityTextBox
//
- this.uplinkCapacityTextBox.Location = new System.Drawing.Point(129, 74);
- this.uplinkCapacityTextBox.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
+ this.uplinkCapacityTextBox.Location = new System.Drawing.Point(103, 59);
this.uplinkCapacityTextBox.Name = "uplinkCapacityTextBox";
- this.uplinkCapacityTextBox.Size = new System.Drawing.Size(112, 25);
+ this.uplinkCapacityTextBox.Size = new System.Drawing.Size(90, 21);
this.uplinkCapacityTextBox.TabIndex = 5;
this.uplinkCapacityTextBox.TextAlign = System.Windows.Forms.HorizontalAlignment.Center;
//
// downlinkCapacityLabel
//
this.downlinkCapacityLabel.AutoSize = true;
- this.downlinkCapacityLabel.Location = new System.Drawing.Point(280, 85);
- this.downlinkCapacityLabel.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
+ this.downlinkCapacityLabel.Location = new System.Drawing.Point(224, 68);
this.downlinkCapacityLabel.Name = "downlinkCapacityLabel";
- this.downlinkCapacityLabel.Size = new System.Drawing.Size(135, 15);
+ this.downlinkCapacityLabel.Size = new System.Drawing.Size(101, 12);
this.downlinkCapacityLabel.TabIndex = 6;
this.downlinkCapacityLabel.Text = "downlinkCapacity";
//
// downlinkCapacityTextBox
//
- this.downlinkCapacityTextBox.Location = new System.Drawing.Point(414, 81);
- this.downlinkCapacityTextBox.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
+ this.downlinkCapacityTextBox.Location = new System.Drawing.Point(331, 65);
this.downlinkCapacityTextBox.Name = "downlinkCapacityTextBox";
- this.downlinkCapacityTextBox.Size = new System.Drawing.Size(112, 25);
+ this.downlinkCapacityTextBox.Size = new System.Drawing.Size(90, 21);
this.downlinkCapacityTextBox.TabIndex = 7;
this.downlinkCapacityTextBox.TextAlign = System.Windows.Forms.HorizontalAlignment.Center;
//
// readBufferSizeLabel
//
this.readBufferSizeLabel.AutoSize = true;
- this.readBufferSizeLabel.Location = new System.Drawing.Point(8, 136);
- this.readBufferSizeLabel.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
+ this.readBufferSizeLabel.Location = new System.Drawing.Point(6, 109);
this.readBufferSizeLabel.Name = "readBufferSizeLabel";
- this.readBufferSizeLabel.Size = new System.Drawing.Size(119, 15);
+ this.readBufferSizeLabel.Size = new System.Drawing.Size(89, 12);
this.readBufferSizeLabel.TabIndex = 8;
this.readBufferSizeLabel.Text = "readBufferSize";
//
// readBufferSizeTextBox
//
- this.readBufferSizeTextBox.Location = new System.Drawing.Point(129, 125);
- this.readBufferSizeTextBox.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
+ this.readBufferSizeTextBox.Location = new System.Drawing.Point(103, 100);
this.readBufferSizeTextBox.Name = "readBufferSizeTextBox";
- this.readBufferSizeTextBox.Size = new System.Drawing.Size(112, 25);
+ this.readBufferSizeTextBox.Size = new System.Drawing.Size(90, 21);
this.readBufferSizeTextBox.TabIndex = 9;
this.readBufferSizeTextBox.TextAlign = System.Windows.Forms.HorizontalAlignment.Center;
//
// writeBufferSizeLabel
//
this.writeBufferSizeLabel.AutoSize = true;
- this.writeBufferSizeLabel.Location = new System.Drawing.Point(280, 136);
- this.writeBufferSizeLabel.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
+ this.writeBufferSizeLabel.Location = new System.Drawing.Point(224, 109);
this.writeBufferSizeLabel.Name = "writeBufferSizeLabel";
- this.writeBufferSizeLabel.Size = new System.Drawing.Size(127, 15);
+ this.writeBufferSizeLabel.Size = new System.Drawing.Size(95, 12);
this.writeBufferSizeLabel.TabIndex = 10;
this.writeBufferSizeLabel.Text = "writeBufferSize";
//
// writeBufferSizeTextBox
//
- this.writeBufferSizeTextBox.Location = new System.Drawing.Point(414, 132);
- this.writeBufferSizeTextBox.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
+ this.writeBufferSizeTextBox.Location = new System.Drawing.Point(331, 106);
this.writeBufferSizeTextBox.Name = "writeBufferSizeTextBox";
- this.writeBufferSizeTextBox.Size = new System.Drawing.Size(112, 25);
+ this.writeBufferSizeTextBox.Size = new System.Drawing.Size(90, 21);
this.writeBufferSizeTextBox.TabIndex = 11;
this.writeBufferSizeTextBox.TextAlign = System.Windows.Forms.HorizontalAlignment.Center;
//
// congestionCheckBox
//
this.congestionCheckBox.AutoSize = true;
- this.congestionCheckBox.Location = new System.Drawing.Point(10, 174);
- this.congestionCheckBox.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
+ this.congestionCheckBox.Location = new System.Drawing.Point(8, 139);
this.congestionCheckBox.Name = "congestionCheckBox";
- this.congestionCheckBox.Size = new System.Drawing.Size(109, 19);
+ this.congestionCheckBox.Size = new System.Drawing.Size(84, 16);
this.congestionCheckBox.TabIndex = 12;
this.congestionCheckBox.Text = "congestion";
this.congestionCheckBox.UseVisualStyleBackColor = true;
@@ -808,21 +767,19 @@ namespace Netch.Forms
this.OtherTabPage.Controls.Add(this.CheckUpdateWhenOpenedCheckBox);
this.OtherTabPage.Controls.Add(this.CheckBetaUpdateCheckBox);
this.OtherTabPage.Controls.Add(this.UpdateSubscribeatWhenOpenedCheckBox);
- this.OtherTabPage.Location = new System.Drawing.Point(4, 33);
- this.OtherTabPage.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
+ this.OtherTabPage.Location = new System.Drawing.Point(4, 25);
this.OtherTabPage.Name = "OtherTabPage";
- this.OtherTabPage.Padding = new System.Windows.Forms.Padding(4, 4, 4, 4);
- this.OtherTabPage.Size = new System.Drawing.Size(578, 405);
+ this.OtherTabPage.Padding = new System.Windows.Forms.Padding(3);
+ this.OtherTabPage.Size = new System.Drawing.Size(461, 325);
this.OtherTabPage.TabIndex = 4;
this.OtherTabPage.Text = "Others";
//
// ExitWhenClosedCheckBox
//
this.ExitWhenClosedCheckBox.AutoSize = true;
- this.ExitWhenClosedCheckBox.Location = new System.Drawing.Point(8, 8);
- this.ExitWhenClosedCheckBox.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
+ this.ExitWhenClosedCheckBox.Location = new System.Drawing.Point(6, 6);
this.ExitWhenClosedCheckBox.Name = "ExitWhenClosedCheckBox";
- this.ExitWhenClosedCheckBox.Size = new System.Drawing.Size(157, 19);
+ this.ExitWhenClosedCheckBox.Size = new System.Drawing.Size(120, 16);
this.ExitWhenClosedCheckBox.TabIndex = 0;
this.ExitWhenClosedCheckBox.Text = "Exit when closed";
this.ExitWhenClosedCheckBox.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
@@ -831,10 +788,9 @@ namespace Netch.Forms
// StopWhenExitedCheckBox
//
this.StopWhenExitedCheckBox.AutoSize = true;
- this.StopWhenExitedCheckBox.Location = new System.Drawing.Point(250, 9);
- this.StopWhenExitedCheckBox.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
+ this.StopWhenExitedCheckBox.Location = new System.Drawing.Point(200, 6);
this.StopWhenExitedCheckBox.Name = "StopWhenExitedCheckBox";
- this.StopWhenExitedCheckBox.Size = new System.Drawing.Size(157, 19);
+ this.StopWhenExitedCheckBox.Size = new System.Drawing.Size(120, 16);
this.StopWhenExitedCheckBox.TabIndex = 1;
this.StopWhenExitedCheckBox.Text = "Stop when exited";
this.StopWhenExitedCheckBox.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
@@ -843,10 +799,9 @@ namespace Netch.Forms
// StartWhenOpenedCheckBox
//
this.StartWhenOpenedCheckBox.AutoSize = true;
- this.StartWhenOpenedCheckBox.Location = new System.Drawing.Point(8, 41);
- this.StartWhenOpenedCheckBox.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
+ this.StartWhenOpenedCheckBox.Location = new System.Drawing.Point(6, 28);
this.StartWhenOpenedCheckBox.Name = "StartWhenOpenedCheckBox";
- this.StartWhenOpenedCheckBox.Size = new System.Drawing.Size(165, 19);
+ this.StartWhenOpenedCheckBox.Size = new System.Drawing.Size(126, 16);
this.StartWhenOpenedCheckBox.TabIndex = 2;
this.StartWhenOpenedCheckBox.Text = "Start when opened";
this.StartWhenOpenedCheckBox.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
@@ -855,10 +810,9 @@ namespace Netch.Forms
// MinimizeWhenStartedCheckBox
//
this.MinimizeWhenStartedCheckBox.AutoSize = true;
- this.MinimizeWhenStartedCheckBox.Location = new System.Drawing.Point(250, 41);
- this.MinimizeWhenStartedCheckBox.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
+ this.MinimizeWhenStartedCheckBox.Location = new System.Drawing.Point(200, 28);
this.MinimizeWhenStartedCheckBox.Name = "MinimizeWhenStartedCheckBox";
- this.MinimizeWhenStartedCheckBox.Size = new System.Drawing.Size(197, 19);
+ this.MinimizeWhenStartedCheckBox.Size = new System.Drawing.Size(150, 16);
this.MinimizeWhenStartedCheckBox.TabIndex = 3;
this.MinimizeWhenStartedCheckBox.Text = "Minimize when started";
this.MinimizeWhenStartedCheckBox.UseVisualStyleBackColor = true;
@@ -866,10 +820,9 @@ namespace Netch.Forms
// RunAtStartupCheckBox
//
this.RunAtStartupCheckBox.AutoSize = true;
- this.RunAtStartupCheckBox.Location = new System.Drawing.Point(8, 75);
- this.RunAtStartupCheckBox.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
+ this.RunAtStartupCheckBox.Location = new System.Drawing.Point(6, 50);
this.RunAtStartupCheckBox.Name = "RunAtStartupCheckBox";
- this.RunAtStartupCheckBox.Size = new System.Drawing.Size(141, 19);
+ this.RunAtStartupCheckBox.Size = new System.Drawing.Size(108, 16);
this.RunAtStartupCheckBox.TabIndex = 4;
this.RunAtStartupCheckBox.Text = "Run at startup";
this.RunAtStartupCheckBox.UseVisualStyleBackColor = true;
@@ -877,10 +830,9 @@ namespace Netch.Forms
// CheckUpdateWhenOpenedCheckBox
//
this.CheckUpdateWhenOpenedCheckBox.AutoSize = true;
- this.CheckUpdateWhenOpenedCheckBox.Location = new System.Drawing.Point(250, 75);
- this.CheckUpdateWhenOpenedCheckBox.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
+ this.CheckUpdateWhenOpenedCheckBox.Location = new System.Drawing.Point(200, 50);
this.CheckUpdateWhenOpenedCheckBox.Name = "CheckUpdateWhenOpenedCheckBox";
- this.CheckUpdateWhenOpenedCheckBox.Size = new System.Drawing.Size(221, 19);
+ this.CheckUpdateWhenOpenedCheckBox.Size = new System.Drawing.Size(168, 16);
this.CheckUpdateWhenOpenedCheckBox.TabIndex = 5;
this.CheckUpdateWhenOpenedCheckBox.Text = "Check update when opened";
this.CheckUpdateWhenOpenedCheckBox.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
@@ -889,10 +841,9 @@ namespace Netch.Forms
// CheckBetaUpdateCheckBox
//
this.CheckBetaUpdateCheckBox.AutoSize = true;
- this.CheckBetaUpdateCheckBox.Location = new System.Drawing.Point(250, 109);
- this.CheckBetaUpdateCheckBox.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
+ this.CheckBetaUpdateCheckBox.Location = new System.Drawing.Point(200, 72);
this.CheckBetaUpdateCheckBox.Name = "CheckBetaUpdateCheckBox";
- this.CheckBetaUpdateCheckBox.Size = new System.Drawing.Size(165, 19);
+ this.CheckBetaUpdateCheckBox.Size = new System.Drawing.Size(126, 16);
this.CheckBetaUpdateCheckBox.TabIndex = 6;
this.CheckBetaUpdateCheckBox.Text = "Check Beta update";
this.CheckBetaUpdateCheckBox.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
@@ -901,10 +852,9 @@ namespace Netch.Forms
// UpdateSubscribeatWhenOpenedCheckBox
//
this.UpdateSubscribeatWhenOpenedCheckBox.AutoSize = true;
- this.UpdateSubscribeatWhenOpenedCheckBox.Location = new System.Drawing.Point(250, 136);
- this.UpdateSubscribeatWhenOpenedCheckBox.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
+ this.UpdateSubscribeatWhenOpenedCheckBox.Location = new System.Drawing.Point(200, 94);
this.UpdateSubscribeatWhenOpenedCheckBox.Name = "UpdateSubscribeatWhenOpenedCheckBox";
- this.UpdateSubscribeatWhenOpenedCheckBox.Size = new System.Drawing.Size(269, 19);
+ this.UpdateSubscribeatWhenOpenedCheckBox.Size = new System.Drawing.Size(204, 16);
this.UpdateSubscribeatWhenOpenedCheckBox.TabIndex = 7;
this.UpdateSubscribeatWhenOpenedCheckBox.Text = "Update subscribeat when opened";
this.UpdateSubscribeatWhenOpenedCheckBox.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
@@ -918,11 +868,10 @@ namespace Netch.Forms
this.AioDNSTabPage.Controls.Add(this.ChinaDNSTextBox);
this.AioDNSTabPage.Controls.Add(this.OtherDNSLabel);
this.AioDNSTabPage.Controls.Add(this.OtherDNSTextBox);
- this.AioDNSTabPage.Location = new System.Drawing.Point(4, 33);
- this.AioDNSTabPage.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
+ this.AioDNSTabPage.Location = new System.Drawing.Point(4, 25);
this.AioDNSTabPage.Name = "AioDNSTabPage";
- this.AioDNSTabPage.Padding = new System.Windows.Forms.Padding(4, 4, 4, 4);
- this.AioDNSTabPage.Size = new System.Drawing.Size(578, 405);
+ this.AioDNSTabPage.Padding = new System.Windows.Forms.Padding(3);
+ this.AioDNSTabPage.Size = new System.Drawing.Size(461, 325);
this.AioDNSTabPage.TabIndex = 5;
this.AioDNSTabPage.Text = "AioDNS";
this.AioDNSTabPage.UseVisualStyleBackColor = true;
@@ -930,67 +879,60 @@ namespace Netch.Forms
// AioDNSRuleRuleLabel
//
this.AioDNSRuleRuleLabel.AutoSize = true;
- this.AioDNSRuleRuleLabel.Location = new System.Drawing.Point(20, 34);
- this.AioDNSRuleRuleLabel.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
+ this.AioDNSRuleRuleLabel.Location = new System.Drawing.Point(16, 27);
this.AioDNSRuleRuleLabel.Name = "AioDNSRuleRuleLabel";
- this.AioDNSRuleRuleLabel.Size = new System.Drawing.Size(79, 15);
+ this.AioDNSRuleRuleLabel.Size = new System.Drawing.Size(59, 12);
this.AioDNSRuleRuleLabel.TabIndex = 0;
this.AioDNSRuleRuleLabel.Text = "Rule File";
//
// AioDNSRulePathTextBox
//
this.AioDNSRulePathTextBox.Enabled = false;
- this.AioDNSRulePathTextBox.Location = new System.Drawing.Point(184, 30);
- this.AioDNSRulePathTextBox.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
+ this.AioDNSRulePathTextBox.Location = new System.Drawing.Point(147, 24);
this.AioDNSRulePathTextBox.Name = "AioDNSRulePathTextBox";
- this.AioDNSRulePathTextBox.Size = new System.Drawing.Size(250, 25);
+ this.AioDNSRulePathTextBox.Size = new System.Drawing.Size(201, 21);
this.AioDNSRulePathTextBox.TabIndex = 1;
//
// ChinaDNSLabel
//
this.ChinaDNSLabel.AutoSize = true;
- this.ChinaDNSLabel.Location = new System.Drawing.Point(20, 91);
- this.ChinaDNSLabel.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
+ this.ChinaDNSLabel.Location = new System.Drawing.Point(16, 64);
this.ChinaDNSLabel.Name = "ChinaDNSLabel";
- this.ChinaDNSLabel.Size = new System.Drawing.Size(79, 15);
+ this.ChinaDNSLabel.Size = new System.Drawing.Size(59, 12);
this.ChinaDNSLabel.TabIndex = 2;
this.ChinaDNSLabel.Text = "China DNS";
//
// ChinaDNSTextBox
//
- this.ChinaDNSTextBox.Location = new System.Drawing.Point(184, 88);
- this.ChinaDNSTextBox.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
+ this.ChinaDNSTextBox.Location = new System.Drawing.Point(147, 61);
this.ChinaDNSTextBox.Name = "ChinaDNSTextBox";
- this.ChinaDNSTextBox.Size = new System.Drawing.Size(250, 25);
+ this.ChinaDNSTextBox.Size = new System.Drawing.Size(201, 21);
this.ChinaDNSTextBox.TabIndex = 3;
this.ChinaDNSTextBox.TextAlign = System.Windows.Forms.HorizontalAlignment.Center;
//
// OtherDNSLabel
//
this.OtherDNSLabel.AutoSize = true;
- this.OtherDNSLabel.Location = new System.Drawing.Point(20, 136);
- this.OtherDNSLabel.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
+ this.OtherDNSLabel.Location = new System.Drawing.Point(16, 103);
this.OtherDNSLabel.Name = "OtherDNSLabel";
- this.OtherDNSLabel.Size = new System.Drawing.Size(79, 15);
+ this.OtherDNSLabel.Size = new System.Drawing.Size(59, 12);
this.OtherDNSLabel.TabIndex = 4;
this.OtherDNSLabel.Text = "Other DNS";
//
// OtherDNSTextBox
//
- this.OtherDNSTextBox.Location = new System.Drawing.Point(184, 132);
- this.OtherDNSTextBox.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
+ this.OtherDNSTextBox.Location = new System.Drawing.Point(147, 100);
this.OtherDNSTextBox.Name = "OtherDNSTextBox";
- this.OtherDNSTextBox.Size = new System.Drawing.Size(250, 25);
+ this.OtherDNSTextBox.Size = new System.Drawing.Size(201, 21);
this.OtherDNSTextBox.TabIndex = 5;
this.OtherDNSTextBox.TextAlign = System.Windows.Forms.HorizontalAlignment.Center;
//
// ControlButton
//
- this.ControlButton.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
- this.ControlButton.Location = new System.Drawing.Point(496, 454);
- this.ControlButton.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
+ this.ControlButton.Anchor = ((System.Windows.Forms.AnchorStyles) ((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
+ this.ControlButton.Location = new System.Drawing.Point(397, 363);
this.ControlButton.Name = "ControlButton";
- this.ControlButton.Size = new System.Drawing.Size(94, 29);
+ this.ControlButton.Size = new System.Drawing.Size(75, 23);
this.ControlButton.TabIndex = 1;
this.ControlButton.Text = "Save";
this.ControlButton.UseVisualStyleBackColor = true;
@@ -1005,33 +947,20 @@ namespace Netch.Forms
this.flowLayoutPanel1.Dock = System.Windows.Forms.DockStyle.Fill;
this.flowLayoutPanel1.FlowDirection = System.Windows.Forms.FlowDirection.TopDown;
this.flowLayoutPanel1.Location = new System.Drawing.Point(0, 0);
- this.flowLayoutPanel1.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
this.flowLayoutPanel1.Name = "flowLayoutPanel1";
- this.flowLayoutPanel1.Size = new System.Drawing.Size(600, 500);
+ this.flowLayoutPanel1.Size = new System.Drawing.Size(480, 400);
this.flowLayoutPanel1.TabIndex = 0;
//
- // NoProxyForUdpCheckBox
- //
- this.NoProxyForUdpCheckBox.AutoSize = true;
- this.NoProxyForUdpCheckBox.Location = new System.Drawing.Point(10, 108);
- this.NoProxyForUdpCheckBox.Margin = new System.Windows.Forms.Padding(4);
- this.NoProxyForUdpCheckBox.Name = "NoProxyForUdpCheckBox";
- this.NoProxyForUdpCheckBox.Size = new System.Drawing.Size(157, 19);
- this.NoProxyForUdpCheckBox.TabIndex = 3;
- this.NoProxyForUdpCheckBox.Text = "No Proxy for Udp";
- this.NoProxyForUdpCheckBox.UseVisualStyleBackColor = true;
- //
// SettingForm
//
- this.AutoScaleDimensions = new System.Drawing.SizeF(120F, 120F);
+ this.AutoScaleDimensions = new System.Drawing.SizeF(96F, 96F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Dpi;
this.AutoSize = true;
this.AutoSizeMode = System.Windows.Forms.AutoSizeMode.GrowAndShrink;
- this.ClientSize = new System.Drawing.Size(600, 500);
+ this.ClientSize = new System.Drawing.Size(480, 400);
this.Controls.Add(this.flowLayoutPanel1);
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle;
- this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
- this.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
+ this.Icon = ((System.Drawing.Icon) (resources.GetObject("$this.Icon")));
this.MaximizeBox = false;
this.Name = "SettingForm";
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent;
@@ -1058,8 +987,8 @@ namespace Netch.Forms
this.flowLayoutPanel1.ResumeLayout(false);
this.ResumeLayout(false);
this.PerformLayout();
-
}
+ private System.Windows.Forms.CheckBox NoProxyForTcpCheckBox;
#endregion
diff --git a/Netch/Forms/SettingForm.cs b/Netch/Forms/SettingForm.cs
index 3b0f3dd1..3599ccc8 100644
--- a/Netch/Forms/SettingForm.cs
+++ b/Netch/Forms/SettingForm.cs
@@ -105,6 +105,10 @@ namespace Netch.Forms
s => Global.Settings.ProcessNoProxyForUdp = s,
Global.Settings.ProcessNoProxyForUdp);
+ BindCheckBox(NoProxyForTcpCheckBox,
+ s => Global.Settings.ProcessNoProxyForTcp = s,
+ Global.Settings.ProcessNoProxyForTcp);
+
#endregion
#region TUN/TAP
@@ -310,10 +314,11 @@ namespace Netch.Forms
return;
}
+ #endregion
#region CheckSTUN
- var stunFlag = true;
+ var errFlag = false;
var stunServer = string.Empty;
ushort stunServerPort = 3478;
@@ -325,15 +330,15 @@ namespace Netch.Forms
if (stun.Length > 1)
if (!ushort.TryParse(stun[1], out stunServerPort))
{
- stunFlag = false;
+ errFlag = true;
}
}
else
{
- stunFlag = false;
+ errFlag = true;
}
- if (!stunFlag)
+ if (errFlag)
{
Utils.Utils.ChangeControlForeColor(STUN_ServerComboBox, Color.Red);
return;
@@ -341,6 +346,15 @@ namespace Netch.Forms
#endregion
+ #region CheckProcessMode
+
+ if (NoProxyForUdpCheckBox.Checked && NoProxyForTcpCheckBox.Checked)
+ {
+ Utils.Utils.ChangeControlForeColor(STUN_ServerComboBox, Color.Red);
+ MessageBoxX.Show("TCP&UDP只允许勾选一个");
+ return;
+ }
+
#endregion
#region Save
diff --git a/Netch/Models/Setting.cs b/Netch/Models/Setting.cs
index 181de757..dd010eae 100644
--- a/Netch/Models/Setting.cs
+++ b/Netch/Models/Setting.cs
@@ -87,6 +87,11 @@ namespace Netch.Models
///
public class Setting
{
+
+ public V2rayConfig V2RayConfig = new V2rayConfig();
+
+ public AioDNSConfig AioDNS = new AioDNSConfig();
+
///
/// 服务器选择位置
///
@@ -267,12 +272,19 @@ namespace Netch.Models
///
public string Language = "System";
- public V2rayConfig V2RayConfig = new V2rayConfig();
-
- public AioDNSConfig AioDNS = new AioDNSConfig();
-
+ ///
+ /// 是否使用RDR内置SS
+ ///
public bool RedirectorSS = false;
+ ///
+ /// 不代理UDP
+ ///
public bool ProcessNoProxyForUdp = false;
+
+ ///
+ /// 不代理TCP
+ ///
+ public bool ProcessNoProxyForTcp = false;
}
}
\ No newline at end of file
diff --git a/Netch/Resources/zh-CN b/Netch/Resources/zh-CN
index 93a3af2a..9a581258 100644
--- a/Netch/Resources/zh-CN
+++ b/Netch/Resources/zh-CN
@@ -162,6 +162,7 @@
"SS DLL": "SS DLL",
"Modify System DNS": "修改系统 DNS",
"No Proxy for Udp": "不代理Udp流量",
+ "No Proxy for Tcp": "不代理Tcp流量",
"ProfileCount": "快捷配置数量",
"ProfileCount value illegal. Try again.": "快捷配置数值非法。请重试。",
"STUN_ServerPort value illegal. Try again.": "STUN 端口数值非法。请重试。",