diff --git a/v2rayN/v2rayN/Forms/MainForm.cs b/v2rayN/v2rayN/Forms/MainForm.cs
index 11ec3fdd..f1e073ab 100644
--- a/v2rayN/v2rayN/Forms/MainForm.cs
+++ b/v2rayN/v2rayN/Forms/MainForm.cs
@@ -319,16 +319,15 @@ namespace v2rayN.Forms
private void DisplayToolStatus()
{
- var localIP = "127.0.0.1";
toolSslSocksPort.Text =
toolSslHttpPort.Text =
toolSslPacPort.Text = "NONE";
- toolSslSocksPort.Text = $"{localIP}:{config.inbound[0].localPort}";
+ toolSslSocksPort.Text = $"{Global.Loopback}:{config.inbound[0].localPort}";
if (config.sysAgentEnabled)
{
- toolSslHttpPort.Text = $"{localIP}:{Global.sysAgentPort}";
+ toolSslHttpPort.Text = $"{Global.Loopback}:{Global.sysAgentPort}";
if (config.listenerType == 2 || config.listenerType == 4)
{
if (PACServerHandle.IsRunning)
@@ -363,7 +362,7 @@ namespace v2rayN.Forms
color = (new Color[] { Color.Red, Color.Purple, Color.DarkGreen, Color.Orange })[index - 1];
//color = ColorTranslator.FromHtml(new string[] { "#CC0066", "#CC6600", "#99CC99", "#666699" }[index - 1]);
}
-
+
var width = 128;
var height = 128;
@@ -607,7 +606,7 @@ namespace v2rayN.Forms
private void menuRealPingServer_Click(object sender, EventArgs e)
{
- if (!config.sysAgentEnabled || config.listenerType != 1)
+ if (!config.sysAgentEnabled)
{
UI.Show(UIRes.I18N("NeedHttpGlobalProxy"));
return;
@@ -622,7 +621,7 @@ namespace v2rayN.Forms
private void menuSpeedServer_Click(object sender, EventArgs e)
{
- if (!config.sysAgentEnabled || config.listenerType != 1)
+ if (!config.sysAgentEnabled)
{
UI.Show(UIRes.I18N("NeedHttpGlobalProxy"));
return;
@@ -1045,7 +1044,7 @@ namespace v2rayN.Forms
#endregion
#region 后台测速
-
+
private void SetTestResult(int k, string txt)
{
config.vmess[k].testResult = txt;
@@ -1299,7 +1298,7 @@ namespace v2rayN.Forms
}
else
{
- v2rayUpdateHandle.DownloadFileAsync(config, url);
+ v2rayUpdateHandle.DownloadFileAsync(config, url, false);
}
}));
}
@@ -1537,6 +1536,6 @@ namespace v2rayN.Forms
#endregion
-
+
}
}
diff --git a/v2rayN/v2rayN/Forms/OptionSettingForm.resx b/v2rayN/v2rayN/Forms/OptionSettingForm.resx
index 1ec5f048..e5c266e3 100644
--- a/v2rayN/v2rayN/Forms/OptionSettingForm.resx
+++ b/v2rayN/v2rayN/Forms/OptionSettingForm.resx
@@ -143,10 +143,982 @@
0
+
+ groupBox1
+
+
+ System.Windows.Forms.GroupBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ tabPage1
+
+
+ 0
+
+
+ 4, 22
+
+
+
+ 3, 3, 3, 3
+
+
+ 630, 579
+
+
+ 0
+
+
+ Core: basic settings
+
+
+ tabPage1
+
+
+ System.Windows.Forms.TabPage, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ tabControl1
+
+
+ 0
+
+
+ Fill
+
+
+ 3, 3
+
+
+ 0
+
+
+ True
+
+
+ Vertical
+
+
+ 604, 414
+
+
+ 0
+
+
+ txtUseragent
+
+
+ System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ tabPage3
+
+
+ 0
+
+
+ 4, 22
+
+
+ 3, 3, 3, 3
+
+
+ 610, 420
+
+
+ 0
+
+
+ Proxy's Domain or IP
+
+
+ tabPage3
+
+
+ System.Windows.Forms.TabPage, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ tabControl2
+
+
+ 0
+
+
+ Fill
+
+
+ 3, 3
+
+
+ 0
+
+
+ True
+
+
+ Vertical
+
+
+ 604, 414
+
+
+ 1
+
+
+ txtUserdirect
+
+
+ System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ tabPage4
+
+
+ 0
+
+
+ 4, 22
+
+
+ 3, 3, 3, 3
+
+
+ 610, 420
+
+
+ 1
+
+
+ Directly connected Domain or IP
+
+
+ tabPage4
+
+
+ System.Windows.Forms.TabPage, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ tabControl2
+
+
+ 1
+
+
+ Fill
+
+
+ 3, 3
+
+
+ 0
+
+
+ True
+
+
+ Vertical
+
+
+ 604, 414
+
+
+ 1
+
+
+ txtUserblock
+
+
+ System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ tabPage5
+
+
+ 0
+
+
+ 4, 22
+
+
+ 3, 3, 3, 3
+
+
+ 610, 420
+
+
+ 2
+
+
+ Blocked Domain or IP
+
+
+ tabPage5
+
+
+ System.Windows.Forms.TabPage, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ tabControl2
+
+
+ 2
+
+
+ Fill
+
+
+ 3, 124
+
+
+ 618, 446
+
+
+ 12
+
+
+ tabControl2
+
+
+ System.Windows.Forms.TabControl, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ groupBox2
+
+
+ 0
+
+
+ btnSetDefRountingRule
+
+
+ System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ panel3
+
+
+ 0
+
+
+ cmbdomainStrategy
+
+
+ System.Windows.Forms.ComboBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ panel3
+
+
+ 1
+
+
+ labRoutingTips
+
+
+ System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ panel3
+
+
+ 2
+
+
+ label15
+
+
+ System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ panel3
+
+
+ 3
+
+
+ label12
+
+
+ System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ panel3
+
+
+ 4
+
+
+ cmbroutingMode
+
+
+ System.Windows.Forms.ComboBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ panel3
+
+
+ 5
+
+
+ Top
+
+
+ 3, 17
+
+
+ 618, 107
+
+
+ 19
+
+
+ panel3
+
+
+ System.Windows.Forms.Panel, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ groupBox2
+
+
+ 1
+
+
+ Fill
+
+
+ 3, 3
+
+
+ 624, 573
+
+
+ 12
+
+
+ groupBox2
+
+
+ System.Windows.Forms.GroupBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ tabPage2
+
+
+ 0
+
+
+ 4, 22
+
+
+ 3, 3, 3, 3
+
+
+ 630, 579
+
+
+ 1
+
+
+ Core: Routing settings
+
+
+ tabPage2
+
+
+ System.Windows.Forms.TabPage, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ tabControl1
+
+
+ 1
+
+
+ chkKcpcongestion
+
+
+ System.Windows.Forms.CheckBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ tabPage6
+
+
+ 0
+
+
+ txtKcpwriteBufferSize
+
+
+ System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ tabPage6
+
+
+ 1
+
+
+ label10
+
+
+ System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ tabPage6
+
+
+ 2
+
+
+ txtKcpreadBufferSize
+
+
+ System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ tabPage6
+
+
+ 3
+
+
+ label11
+
+
+ System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ tabPage6
+
+
+ 4
+
+
+ txtKcpdownlinkCapacity
+
+
+ System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ tabPage6
+
+
+ 5
+
+
+ label8
+
+
+ System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ tabPage6
+
+
+ 6
+
+
+ txtKcpuplinkCapacity
+
+
+ System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ tabPage6
+
+
+ 7
+
+
+ label9
+
+
+ System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ tabPage6
+
+
+ 8
+
+
+ txtKcptti
+
+
+ System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ tabPage6
+
+
+ 9
+
+
+ label7
+
+
+ System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ tabPage6
+
+
+ 10
+
+
+ txtKcpmtu
+
+
+ System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ tabPage6
+
+
+ 11
+
+
+ label6
+
+
+ System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ tabPage6
+
+
+ 12
+
+
+ 4, 22
+
+
+ 3, 3, 3, 3
+
+
+ 630, 579
+
+
+ 2
+
+
+ Core: KCP settings
+
+
+ tabPage6
+
+
+ System.Windows.Forms.TabPage, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ tabControl1
+
+
+ 2
+
+
+ cbFreshrate
+
+
+ System.Windows.Forms.ComboBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ tabPage7
+
+
+ 0
+
+
+ tbCacheDays
+
+
+ System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ tabPage7
+
+
+ 1
+
+
+ lbFreshrate
+
+
+ System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ tabPage7
+
+
+ 2
+
+
+ lbCacheDays
+
+
+ System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ tabPage7
+
+
+ 3
+
+
+ chkEnableStatistics
+
+
+ System.Windows.Forms.CheckBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ tabPage7
+
+
+ 4
+
+
+ chkAllowLANConn
+
+
+ System.Windows.Forms.CheckBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ tabPage7
+
+
+ 5
+
+
+ txturlGFWList
+
+
+ System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ tabPage7
+
+
+ 6
+
+
+ label13
+
+
+ System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ tabPage7
+
+
+ 7
+
+
+ chkAutoRun
+
+
+ System.Windows.Forms.CheckBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ tabPage7
+
+
+ 8
+
+
+ 4, 22
+
+
+ 3, 3, 3, 3
+
+
+ 630, 579
+
+
+ 3
+
+
+ v2rayN settings
+
+
+ tabPage7
+
+
+ System.Windows.Forms.TabPage, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ tabControl1
+
+
+ 3
+
+
+ Fill
+
+
+ 0, 10
+
+
+ 638, 605
+
+
+ 10
+
+
+ tabControl1
+
+
+ System.Windows.Forms.TabControl, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ $this
+
+
+ 0
+
+
+ chksniffingEnabled2
+
+
+ System.Windows.Forms.CheckBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ groupBox1
+
+
+ 0
+
+
+ chksniffingEnabled
+
+
+ System.Windows.Forms.CheckBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ groupBox1
+
+
+ 1
+
+
+ txtremoteDNS
+
+
+ System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ groupBox1
+
+
+ 2
+
+
+ label14
+
+
+ System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ groupBox1
+
+
+ 3
+
+
+ chkmuxEnabled
+
+
+ System.Windows.Forms.CheckBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ groupBox1
+
+
+ 4
+
+
+ chkAllowIn2
+
+
+ System.Windows.Forms.CheckBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ groupBox1
+
+
+ 5
+
+
+ chkudpEnabled2
+
+
+ System.Windows.Forms.CheckBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ groupBox1
+
+
+ 6
+
+
+ cmbprotocol2
+
+
+ System.Windows.Forms.ComboBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ groupBox1
+
+
+ 7
+
+
+ label3
+
+
+ System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ groupBox1
+
+
+ 8
+
+
+ txtlocalPort2
+
+
+ System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ groupBox1
+
+
+ 9
+
+
+ cmbprotocol
+
+
+ System.Windows.Forms.ComboBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ groupBox1
+
+
+ 10
+
+
+ label1
+
+
+ System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ groupBox1
+
+
+ 11
+
+
+ chkudpEnabled
+
+
+ System.Windows.Forms.CheckBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ groupBox1
+
+
+ 12
+
+
+ chklogEnabled
+
+
+ System.Windows.Forms.CheckBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ groupBox1
+
+
+ 13
+
+
+ cmbloglevel
+
+
+ System.Windows.Forms.ComboBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ groupBox1
+
+
+ 14
+
+
+ label5
+
+
+ System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ groupBox1
+
+
+ 15
+
+
+ txtlocalPort
+
+
+ System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ groupBox1
+
+
+ 16
+
+
+ label2
+
+
+ System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ groupBox1
+
+
+ 17
+
+
+ Fill
+
+
+ 3, 3
+
+
+ 624, 573
+
+
+ 6
+
+
+ groupBox1
+
+
+ System.Windows.Forms.GroupBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ tabPage1
+
+
+ 0
+
True
-
NoControl
@@ -639,252 +1611,6 @@
17
-
- Fill
-
-
- 3, 3
-
-
- 624, 573
-
-
- 6
-
-
- groupBox1
-
-
- System.Windows.Forms.GroupBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- tabPage1
-
-
- 0
-
-
- 4, 22
-
-
- 3, 3, 3, 3
-
-
- 630, 579
-
-
- 0
-
-
- Core: basic settings
-
-
- tabPage1
-
-
- System.Windows.Forms.TabPage, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- tabControl1
-
-
- 0
-
-
- Fill
-
-
- 3, 3
-
-
- True
-
-
- Vertical
-
-
- 604, 414
-
-
- 0
-
-
- txtUseragent
-
-
- System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- tabPage3
-
-
- 0
-
-
- 4, 22
-
-
- 3, 3, 3, 3
-
-
- 610, 420
-
-
- 0
-
-
- Proxy's Domain or IP
-
-
- tabPage3
-
-
- System.Windows.Forms.TabPage, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- tabControl2
-
-
- 0
-
-
- Fill
-
-
- 3, 3
-
-
- True
-
-
- Vertical
-
-
- 604, 414
-
-
- 1
-
-
- txtUserdirect
-
-
- System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- tabPage4
-
-
- 0
-
-
- 4, 22
-
-
- 3, 3, 3, 3
-
-
- 610, 420
-
-
- 1
-
-
- Directly connected Domain or IP
-
-
- tabPage4
-
-
- System.Windows.Forms.TabPage, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- tabControl2
-
-
- 1
-
-
- Fill
-
-
- 3, 3
-
-
- True
-
-
- Vertical
-
-
- 604, 414
-
-
- 1
-
-
- txtUserblock
-
-
- System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- tabPage5
-
-
- 0
-
-
- 4, 22
-
-
- 3, 3, 3, 3
-
-
- 610, 420
-
-
- 2
-
-
- Blocked Domain or IP
-
-
- tabPage5
-
-
- System.Windows.Forms.TabPage, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- tabControl2
-
-
- 2
-
-
- Fill
-
-
- 3, 124
-
-
- 618, 446
-
-
- 12
-
-
- tabControl2
-
-
- System.Windows.Forms.TabControl, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- groupBox2
-
-
- 0
-
356, 43
@@ -1056,81 +1782,6 @@
5
-
- Top
-
-
- 3, 17
-
-
- 618, 107
-
-
- 19
-
-
- panel3
-
-
- System.Windows.Forms.Panel, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- groupBox2
-
-
- 1
-
-
- Fill
-
-
- 3, 3
-
-
- 624, 573
-
-
- 12
-
-
- groupBox2
-
-
- System.Windows.Forms.GroupBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- tabPage2
-
-
- 0
-
-
- 4, 22
-
-
- 3, 3, 3, 3
-
-
- 630, 579
-
-
- 1
-
-
- Core: Routing settings
-
-
- tabPage2
-
-
- System.Windows.Forms.TabPage, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- tabControl1
-
-
- 1
-
True
@@ -1446,33 +2097,6 @@
12
-
- 4, 22
-
-
- 3, 3, 3, 3
-
-
- 630, 579
-
-
- 2
-
-
- Core: KCP settings
-
-
- tabPage6
-
-
- System.Windows.Forms.TabPage, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- tabControl1
-
-
- 2
-
161, 82
@@ -1704,69 +2328,6 @@
8
-
- 4, 22
-
-
- 3, 3, 3, 3
-
-
- 630, 579
-
-
- 3
-
-
- v2rayN settings
-
-
- tabPage7
-
-
- System.Windows.Forms.TabPage, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- tabControl1
-
-
- 3
-
-
- Fill
-
-
- 0, 10
-
-
- 638, 605
-
-
- 10
-
-
- tabControl1
-
-
- System.Windows.Forms.TabControl, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
-
- $this
-
-
- 0
-
-
- 267, 16
-
-
- 75, 23
-
-
- 8
-
-
- &OK
-
btnOK
@@ -1803,6 +2364,30 @@
1
+
+ 267, 16
+
+
+ 75, 23
+
+
+ 8
+
+
+ &OK
+
+
+ btnOK
+
+
+ System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ panel2
+
+
+ 1
+
Top
diff --git a/v2rayN/v2rayN/Global.cs b/v2rayN/v2rayN/Global.cs
index 2027cc78..94534f20 100644
--- a/v2rayN/v2rayN/Global.cs
+++ b/v2rayN/v2rayN/Global.cs
@@ -147,10 +147,10 @@ namespace v2rayN
///
public const string CustomIconName = "v2rayN.ico";
+ public const string Loopback = "127.0.0.1";
public const string InboundAPITagName = "api";
- public const string InboundProxyTagName = "proxy";
- public const string Loopback = "127.0.0.1";
+ public const string InboundProxyTagName = "proxy";
public const string InboundAPIProtocal = "dokodemo-door";
public enum StatisticsFreshRate
diff --git a/v2rayN/v2rayN/Handler/SpeedtestHandler.cs b/v2rayN/v2rayN/Handler/SpeedtestHandler.cs
index f96dd00d..cba9e741 100644
--- a/v2rayN/v2rayN/Handler/SpeedtestHandler.cs
+++ b/v2rayN/v2rayN/Handler/SpeedtestHandler.cs
@@ -232,7 +232,7 @@ namespace v2rayN.Handler
testCounter++;
- v2rayUpdateHandle2.DownloadFileAsync(_config, url);
+ v2rayUpdateHandle2.DownloadFileAsync(_config, url,true);
return 0;
}
@@ -276,6 +276,7 @@ namespace v2rayN.Handler
{
HttpWebRequest myHttpWebRequest = (HttpWebRequest)WebRequest.Create(url);
myHttpWebRequest.Timeout = 5000;
+ myHttpWebRequest.Proxy = new WebProxy(Global.Loopback, Global.sysAgentPort);
var timer = new Stopwatch();
timer.Start();
diff --git a/v2rayN/v2rayN/Handler/StatisticsHandler.cs b/v2rayN/v2rayN/Handler/StatisticsHandler.cs
index 766d4021..c6074b66 100644
--- a/v2rayN/v2rayN/Handler/StatisticsHandler.cs
+++ b/v2rayN/v2rayN/Handler/StatisticsHandler.cs
@@ -95,7 +95,7 @@ namespace v2rayN.Handler
{
Global.statePort = GetFreePort();
- channel_ = new Channel($"127.0.0.1:{Global.statePort}", ChannelCredentials.Insecure);
+ channel_ = new Channel($"{Global.Loopback}:{Global.statePort}", ChannelCredentials.Insecure);
channel_.ConnectAsync();
client_ = new StatsService.StatsServiceClient(channel_);
}
diff --git a/v2rayN/v2rayN/Handler/V2rayConfigHandler.cs b/v2rayN/v2rayN/Handler/V2rayConfigHandler.cs
index 712e8350..f9e08998 100644
--- a/v2rayN/v2rayN/Handler/V2rayConfigHandler.cs
+++ b/v2rayN/v2rayN/Handler/V2rayConfigHandler.cs
@@ -159,7 +159,7 @@ namespace v2rayN.Handler
}
else
{
- inbound.listen = "127.0.0.1";
+ inbound.listen = Global.Loopback;
}
//开启udp
inbound.settings.udp = config.inbound[0].udpEnabled;
diff --git a/v2rayN/v2rayN/Handler/V2rayUpdateHandle.cs b/v2rayN/v2rayN/Handler/V2rayUpdateHandle.cs
index 2de80f26..e26eff00 100644
--- a/v2rayN/v2rayN/Handler/V2rayUpdateHandle.cs
+++ b/v2rayN/v2rayN/Handler/V2rayUpdateHandle.cs
@@ -92,7 +92,7 @@ namespace v2rayN.Handler
}
- public void DownloadFileAsync(Config config, string url)
+ public void DownloadFileAsync(Config config, string url, bool blProxy)
{
try
{
@@ -100,12 +100,17 @@ namespace v2rayN.Handler
ServicePointManager.DefaultConnectionLimit = 256;
if (UpdateCompleted != null)
{
- UpdateCompleted(this, new ResultEventArgs(false, url));
+ UpdateCompleted(this, new ResultEventArgs(false, "Downloading..."));
}
progressPercentage = -1;
WebClientEx ws = new WebClientEx();
+ if (blProxy)
+ {
+ ws.Proxy = new WebProxy(Global.Loopback, Global.sysAgentPort);
+ }
+
ws.DownloadFileCompleted += ws_DownloadFileCompleted;
ws.DownloadProgressChanged += ws_DownloadProgressChanged;
ws.DownloadFileAsync(new Uri(url), Utils.GetPath(DownloadFileName));
@@ -216,6 +221,6 @@ namespace v2rayN.Handler
}
}
-
+
}
}
diff --git a/v2rayN/v2rayN/HttpProxyHandler/HttpProxyHandle.cs b/v2rayN/v2rayN/HttpProxyHandler/HttpProxyHandle.cs
index fd11820b..d2282c31 100644
--- a/v2rayN/v2rayN/HttpProxyHandler/HttpProxyHandle.cs
+++ b/v2rayN/v2rayN/HttpProxyHandler/HttpProxyHandle.cs
@@ -47,7 +47,7 @@ namespace v2rayN.HttpProxyHandler
{
PACServerHandle.Stop();
PACFileWatcherHandle.StopWatch();
- SysProxyHandle.SetIEProxy(true, true, "127.0.0.1:" + port, null);
+ SysProxyHandle.SetIEProxy(true, true, $"{Global.Loopback}:{port}", null);
}
else if (type == 2)
{
@@ -168,8 +168,8 @@ namespace v2rayN.HttpProxyHandler
public static string GetPacUrl()
{
- string pacUrl = string.Format("http://127.0.0.1:{0}/pac/?t={1}", Global.pacPort,
- GetTimestamp(DateTime.Now));
+ string pacUrl = $"http://{Global.Loopback}:{Global.pacPort}/pac/?t={GetTimestamp(DateTime.Now)}";
+
return pacUrl;
}
diff --git a/v2rayN/v2rayN/HttpProxyHandler/PACListHandle.cs b/v2rayN/v2rayN/HttpProxyHandler/PACListHandle.cs
index 2d021a3b..8aaa0822 100644
--- a/v2rayN/v2rayN/HttpProxyHandler/PACListHandle.cs
+++ b/v2rayN/v2rayN/HttpProxyHandler/PACListHandle.cs
@@ -46,7 +46,7 @@ namespace v2rayN.HttpProxyHandler
//{
// throw new Exception("未发现HTTP代理,无法设置代理更新");
//}
- WebClient http = new WebClient();
+ var http = new WebClientEx();
//http.Headers.Add("Connection", "Close");
//http.Proxy = new WebProxy(IPAddress.Loopback.ToString(), httpProxy.localPort);
http.DownloadStringCompleted += http_DownloadStringCompleted;
diff --git a/v2rayN/v2rayN/HttpProxyHandler/PACServerHandle.cs b/v2rayN/v2rayN/HttpProxyHandler/PACServerHandle.cs
index 01561103..21e3fd6c 100644
--- a/v2rayN/v2rayN/HttpProxyHandler/PACServerHandle.cs
+++ b/v2rayN/v2rayN/HttpProxyHandler/PACServerHandle.cs
@@ -31,11 +31,11 @@ namespace v2rayN.HttpProxyHandler
//{
// pacPort = Global.pacPort;
//}
- if (InitServer("127.0.0.1"))
+ if (InitServer(Global.Loopback))
{
pacPort = Global.pacPort;
}
- else if (InitServerB("127.0.0.1"))
+ else if (InitServerB(Global.Loopback))
{
pacPort = Global.pacPort;
}
diff --git a/v2rayN/v2rayN/HttpProxyHandler/PrivoxyHandler.cs b/v2rayN/v2rayN/HttpProxyHandler/PrivoxyHandler.cs
index 169ed1df..939f1415 100644
--- a/v2rayN/v2rayN/HttpProxyHandler/PrivoxyHandler.cs
+++ b/v2rayN/v2rayN/HttpProxyHandler/PrivoxyHandler.cs
@@ -99,7 +99,7 @@ namespace v2rayN.HttpProxyHandler
}
else
{
- privoxyConfig = privoxyConfig.Replace("__PRIVOXY_BIND_IP__", "127.0.0.1");
+ privoxyConfig = privoxyConfig.Replace("__PRIVOXY_BIND_IP__", Global.Loopback);
}
FileManager.ByteArrayToFile(Utils.GetTempPath(_uniqueConfigFile), Encoding.UTF8.GetBytes(privoxyConfig));
diff --git a/v2rayN/v2rayN/HttpProxyHandler/SysProxyHandle.cs b/v2rayN/v2rayN/HttpProxyHandler/SysProxyHandle.cs
index a2397740..e8056ec2 100644
--- a/v2rayN/v2rayN/HttpProxyHandler/SysProxyHandle.cs
+++ b/v2rayN/v2rayN/HttpProxyHandler/SysProxyHandle.cs
@@ -49,14 +49,14 @@ namespace v2rayN.HttpProxyHandler
public static void SetIEProxy(bool enable, bool global, string proxyServer, string pacURL)
{
- Read();
+ //Read();
- if (!_userSettings.UserSettingsRecorded)
- {
- // record user settings
- ExecSysproxy("query");
- ParseQueryStr(_queryStr);
- }
+ //if (!_userSettings.UserSettingsRecorded)
+ //{
+ // // record user settings
+ // ExecSysproxy("query");
+ // ParseQueryStr(_queryStr);
+ //}
string arguments;
if (enable)
@@ -71,17 +71,19 @@ namespace v2rayN.HttpProxyHandler
else
{
// restore user settings
- var flags = _userSettings.Flags;
- var proxy_server = _userSettings.ProxyServer ?? "-";
- var bypass_list = _userSettings.BypassList ?? "-";
- var pac_url = _userSettings.PacUrl ?? "-";
- arguments = string.Format("set {0} {1} {2} {3}", flags, proxy_server, bypass_list, pac_url);
+ //var flags = _userSettings.Flags;
+ //var proxy_server = _userSettings.ProxyServer ?? "-";
+ //var bypass_list = _userSettings.BypassList ?? "-";
+ //var pac_url = _userSettings.PacUrl ?? "-";
+ ////arguments = string.Format("set {0} {1} {2} {3}", flags, proxy_server, bypass_list, pac_url);
+ //set null settings
+ arguments = string.Format("set {0} {1} {2} {3}", 1, "-", "", @"http://127.0.0.1");
// have to get new settings
- _userSettings.UserSettingsRecorded = false;
+ //_userSettings.UserSettingsRecorded = false;
}
- Save();
+ //Save();
ExecSysproxy(arguments);
}
diff --git a/v2rayN/v2rayN/HttpProxyHandler/WebClientEx.cs b/v2rayN/v2rayN/HttpProxyHandler/WebClientEx.cs
index 2ce644d5..3b141f85 100644
--- a/v2rayN/v2rayN/HttpProxyHandler/WebClientEx.cs
+++ b/v2rayN/v2rayN/HttpProxyHandler/WebClientEx.cs
@@ -5,17 +5,42 @@ namespace v2rayN.HttpProxyHandler
{
class WebClientEx : WebClient
{
- public int Timeout { get; set; }
+ public int Timeout
+ {
+ get; set;
+ }
public WebClientEx(int timeout = 3000)
{
Timeout = timeout;
}
-
protected override WebRequest GetWebRequest(Uri address)
{
- var request = base.GetWebRequest(address);
+ HttpWebRequest request;
+ if (address.Scheme == "https")
+ {
+ ServicePointManager.ServerCertificateValidationCallback = (a, b, c, d) => { return true; };
+ request = (HttpWebRequest)base.GetWebRequest(address);
+ request.ProtocolVersion = HttpVersion.Version10;
+ }
+ else
+ {
+ request = (HttpWebRequest)base.GetWebRequest(address);
+ }
+
request.Timeout = Timeout;
+ request.ReadWriteTimeout = Timeout;
+ //request.AllowAutoRedirect = false;
+ //request.AllowWriteStreamBuffering = true;
+
+ request.ServicePoint.BindIPEndPointDelegate = (servicePoint, remoteEndPoint, retryCount) =>
+ {
+ if (remoteEndPoint.AddressFamily == System.Net.Sockets.AddressFamily.InterNetworkV6)
+ return new IPEndPoint(IPAddress.IPv6Any, 0);
+ else
+ return new IPEndPoint(IPAddress.Any, 0);
+ };
+
return request;
}
}
diff --git a/v2rayN/v2rayN/Properties/AssemblyInfo.cs b/v2rayN/v2rayN/Properties/AssemblyInfo.cs
index 789bb76b..ec178c4d 100644
--- a/v2rayN/v2rayN/Properties/AssemblyInfo.cs
+++ b/v2rayN/v2rayN/Properties/AssemblyInfo.cs
@@ -33,4 +33,4 @@ using System.Runtime.InteropServices;
// 方法是按如下所示使用“*”:
//[assembly: AssemblyVersion("1.0.*")]
//[assembly: AssemblyVersion("1.0.0")]
-[assembly: AssemblyFileVersion("2.43")]
+[assembly: AssemblyFileVersion("2.45")]