Compare commits

...

32 Commits
5.34 ... 5.39

Author SHA1 Message Date
2dust
529b6613e9 up 5.39 2022-12-11 08:29:26 +08:00
2dust
8a5d8cdf8a Check Update 2022-12-11 08:29:11 +08:00
2dust
cdf35740d9 Update UpdateHandle.cs 2022-12-01 20:22:26 +08:00
2dust
76c40585fd bug fix 2022-11-06 20:20:09 +08:00
2dust
2bf58288d3 fix vless tls flow 2022-11-02 20:56:09 +08:00
2dust
ba2eac5290 up 5.38 2022-11-02 19:20:05 +08:00
2dust
23a4e4cc19 refresh ui after update sub 2022-11-02 19:19:26 +08:00
2dust
841a20cbd4 fix naiveproxy redirect output issue 2022-11-02 19:18:31 +08:00
2dust
f70ca77913 add xtls-rprx-vision 2022-11-01 11:32:10 +08:00
2dust
c97df99c5c Merge pull request #2740 from wh201906/patch-1
Add support for config file with .yml extension
2022-10-28 09:11:01 +08:00
Self Not Found
809e170018 Add support for config file with .yml extension 2022-10-28 00:09:25 +08:00
2dust
d0c8f5eb45 Revert "add domainStrategy4Freedoms"
This reverts commit d0f953f1d8.
2022-10-26 19:41:21 +08:00
2dust
d0f953f1d8 add domainStrategy4Freedoms 2022-10-26 19:38:38 +08:00
2dust
6d1636c540 fix update check 2022-10-26 19:09:40 +08:00
2dust
b3292729b0 fix ui 2022-10-15 07:50:48 +08:00
2dust
11840ffc8a up 5.37 2022-10-14 20:47:06 +08:00
2dust
9fd20d1dc8 Add fingerprint(uTLS) option 2022-10-14 20:43:54 +08:00
2dust
ea6799d749 Update README.md 2022-10-10 20:23:37 +08:00
2dust
e23fe00a37 Revert "Merge pull request #2654 from FrzMtrsprt/ArchV3"
This reverts commit ccda957e8f, reversing
changes made to 4dfb0fa213.
2022-09-30 20:22:48 +08:00
2dust
ccda957e8f Merge pull request #2654 from FrzMtrsprt/ArchV3
Make Clash cores use newer microarch level
2022-09-27 20:46:10 +08:00
FrzMtrsprt
cdaaf00509 Make Clash cores use newer microarch level 2022-09-27 18:41:45 +08:00
2dust
4dfb0fa213 Update v2rayN.csproj 2022-09-20 20:25:35 +08:00
2dust
dcda8fc773 Update StatisticsHandler.cs 2022-09-20 20:25:32 +08:00
2dust
9c3fff8510 fix sing-box support 2022-09-20 20:19:31 +08:00
2dust
c3526ebfa3 Merge pull request #2640 from chika0801/master
add sing-box support
2022-09-20 20:04:15 +08:00
chika0801
28ba47a2f5 add sing-box support 2022-09-19 22:57:15 +08:00
chika0801
55a8b9085e add sing-box support 2022-09-19 22:56:15 +08:00
chika0801
2f250c5569 add sing-box support 2022-09-19 22:54:05 +08:00
2dust
e9d0565e6a fix ui 2022-09-13 20:42:30 +08:00
2dust
272de5f34d Update v2rayN.csproj 2022-09-08 20:52:51 +08:00
2dust
60a319a482 Add v2fly_v5 support 2022-09-08 20:52:44 +08:00
2dust
9e440fd5e6 bug fix 2022-08-21 20:15:15 +08:00
25 changed files with 1758 additions and 1080 deletions

View File

@@ -16,3 +16,6 @@ A V2Ray client for Windows, support [Xray core](https://github.com/XTLS/Xray-cor
- Microsoft [.NET Framework 4.8 Runtime](https://dotnet.microsoft.com/zh-cn/download/dotnet-framework/thank-you/net48-offline-installer)
- v2fly core [https://github.com/v2fly/v2ray-core/releases](https://github.com/v2fly/v2ray-core/releases)
- Xray core [https://github.com/XTLS/Xray-core/releases](https://github.com/XTLS/Xray-core/releases)
### Telegram Channel
[github_2dust](https://t.me/github_2dust)

View File

@@ -113,7 +113,7 @@ namespace v2rayN.Forms
OpenFileDialog fileDialog = new OpenFileDialog
{
Multiselect = false,
Filter = "Config|*.json|YAML|*.yaml|All|*.*"
Filter = "Config|*.json|YAML|*.yaml;*.yml|All|*.*"
};
if (fileDialog.ShowDialog() != DialogResult.OK)
{

View File

@@ -65,6 +65,8 @@
this.cmbSecurity = new System.Windows.Forms.ComboBox();
this.label5 = new System.Windows.Forms.Label();
this.panAddr = new System.Windows.Forms.Panel();
this.cmbCoreType = new System.Windows.Forms.ComboBox();
this.labCoreType = new System.Windows.Forms.Label();
this.label6 = new System.Windows.Forms.Label();
this.label1 = new System.Windows.Forms.Label();
this.txtAddress = new System.Windows.Forms.TextBox();
@@ -76,8 +78,6 @@
this.panTop = new System.Windows.Forms.Panel();
this.panTran = new System.Windows.Forms.Panel();
this.transportControl = new v2rayN.Forms.ServerTransportControl();
this.cmbCoreType = new System.Windows.Forms.ComboBox();
this.labCoreType = new System.Windows.Forms.Label();
this.groupBox1.SuspendLayout();
this.panSocks.SuspendLayout();
this.panSs.SuspendLayout();
@@ -329,6 +329,18 @@
resources.ApplyResources(this.panAddr, "panAddr");
this.panAddr.Name = "panAddr";
//
// cmbCoreType
//
this.cmbCoreType.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
this.cmbCoreType.FormattingEnabled = true;
resources.ApplyResources(this.cmbCoreType, "cmbCoreType");
this.cmbCoreType.Name = "cmbCoreType";
//
// labCoreType
//
resources.ApplyResources(this.labCoreType, "labCoreType");
this.labCoreType.Name = "labCoreType";
//
// label6
//
resources.ApplyResources(this.label6, "label6");
@@ -390,18 +402,6 @@
resources.ApplyResources(this.transportControl, "transportControl");
this.transportControl.Name = "transportControl";
//
// cmbCoreType
//
this.cmbCoreType.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
this.cmbCoreType.FormattingEnabled = true;
resources.ApplyResources(this.cmbCoreType, "cmbCoreType");
this.cmbCoreType.Name = "cmbCoreType";
//
// labCoreType
//
resources.ApplyResources(this.labCoreType, "labCoreType");
this.labCoreType.Name = "labCoreType";
//
// AddServerForm
//
resources.ApplyResources(this, "$this");

View File

@@ -143,10 +143,613 @@
<data name="&gt;&gt;btnClose.ZOrder" xml:space="preserve">
<value>0</value>
</data>
<data name="&gt;&gt;label17.Name" xml:space="preserve">
<value>label17</value>
</data>
<data name="&gt;&gt;label17.Type" xml:space="preserve">
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;label17.Parent" xml:space="preserve">
<value>panSocks</value>
</data>
<data name="&gt;&gt;label17.ZOrder" xml:space="preserve">
<value>0</value>
</data>
<data name="&gt;&gt;txtSecurity4.Name" xml:space="preserve">
<value>txtSecurity4</value>
</data>
<data name="&gt;&gt;txtSecurity4.Type" xml:space="preserve">
<value>System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;txtSecurity4.Parent" xml:space="preserve">
<value>panSocks</value>
</data>
<data name="&gt;&gt;txtSecurity4.ZOrder" xml:space="preserve">
<value>1</value>
</data>
<data name="&gt;&gt;label18.Name" xml:space="preserve">
<value>label18</value>
</data>
<data name="&gt;&gt;label18.Type" xml:space="preserve">
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;label18.Parent" xml:space="preserve">
<value>panSocks</value>
</data>
<data name="&gt;&gt;label18.ZOrder" xml:space="preserve">
<value>2</value>
</data>
<data name="&gt;&gt;txtId4.Name" xml:space="preserve">
<value>txtId4</value>
</data>
<data name="&gt;&gt;txtId4.Type" xml:space="preserve">
<value>System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;txtId4.Parent" xml:space="preserve">
<value>panSocks</value>
</data>
<data name="&gt;&gt;txtId4.ZOrder" xml:space="preserve">
<value>3</value>
</data>
<data name="panSocks.Location" type="System.Drawing.Point, System.Drawing">
<value>303, 163</value>
</data>
<data name="panSocks.Size" type="System.Drawing.Size, System.Drawing">
<value>82, 39</value>
</data>
<data name="panSocks.TabIndex" type="System.Int32, mscorlib">
<value>31</value>
</data>
<data name="panSocks.Visible" type="System.Boolean, mscorlib">
<value>False</value>
</data>
<data name="&gt;&gt;panSocks.Name" xml:space="preserve">
<value>panSocks</value>
</data>
<data name="&gt;&gt;panSocks.Type" xml:space="preserve">
<value>System.Windows.Forms.Panel, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;panSocks.Parent" xml:space="preserve">
<value>groupBox1</value>
</data>
<data name="&gt;&gt;panSocks.ZOrder" xml:space="preserve">
<value>0</value>
</data>
<data name="&gt;&gt;txtId3.Name" xml:space="preserve">
<value>txtId3</value>
</data>
<data name="&gt;&gt;txtId3.Type" xml:space="preserve">
<value>System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;txtId3.Parent" xml:space="preserve">
<value>panSs</value>
</data>
<data name="&gt;&gt;txtId3.ZOrder" xml:space="preserve">
<value>0</value>
</data>
<data name="&gt;&gt;label15.Name" xml:space="preserve">
<value>label15</value>
</data>
<data name="&gt;&gt;label15.Type" xml:space="preserve">
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;label15.Parent" xml:space="preserve">
<value>panSs</value>
</data>
<data name="&gt;&gt;label15.ZOrder" xml:space="preserve">
<value>1</value>
</data>
<data name="&gt;&gt;cmbSecurity3.Name" xml:space="preserve">
<value>cmbSecurity3</value>
</data>
<data name="&gt;&gt;cmbSecurity3.Type" xml:space="preserve">
<value>System.Windows.Forms.ComboBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;cmbSecurity3.Parent" xml:space="preserve">
<value>panSs</value>
</data>
<data name="&gt;&gt;cmbSecurity3.ZOrder" xml:space="preserve">
<value>2</value>
</data>
<data name="&gt;&gt;label16.Name" xml:space="preserve">
<value>label16</value>
</data>
<data name="&gt;&gt;label16.Type" xml:space="preserve">
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;label16.Parent" xml:space="preserve">
<value>panSs</value>
</data>
<data name="&gt;&gt;label16.ZOrder" xml:space="preserve">
<value>3</value>
</data>
<data name="panSs.Location" type="System.Drawing.Point, System.Drawing">
<value>142, 163</value>
</data>
<data name="panSs.Size" type="System.Drawing.Size, System.Drawing">
<value>82, 39</value>
</data>
<data name="panSs.TabIndex" type="System.Int32, mscorlib">
<value>30</value>
</data>
<data name="panSs.Visible" type="System.Boolean, mscorlib">
<value>False</value>
</data>
<data name="&gt;&gt;panSs.Name" xml:space="preserve">
<value>panSs</value>
</data>
<data name="&gt;&gt;panSs.Type" xml:space="preserve">
<value>System.Windows.Forms.Panel, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;panSs.Parent" xml:space="preserve">
<value>groupBox1</value>
</data>
<data name="&gt;&gt;panSs.ZOrder" xml:space="preserve">
<value>1</value>
</data>
<data name="&gt;&gt;label12.Name" xml:space="preserve">
<value>label12</value>
</data>
<data name="&gt;&gt;label12.Type" xml:space="preserve">
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;label12.Parent" xml:space="preserve">
<value>panTrojan</value>
</data>
<data name="&gt;&gt;label12.ZOrder" xml:space="preserve">
<value>0</value>
</data>
<data name="&gt;&gt;cmbFlow6.Name" xml:space="preserve">
<value>cmbFlow6</value>
</data>
<data name="&gt;&gt;cmbFlow6.Type" xml:space="preserve">
<value>System.Windows.Forms.ComboBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;cmbFlow6.Parent" xml:space="preserve">
<value>panTrojan</value>
</data>
<data name="&gt;&gt;cmbFlow6.ZOrder" xml:space="preserve">
<value>1</value>
</data>
<data name="&gt;&gt;txtId6.Name" xml:space="preserve">
<value>txtId6</value>
</data>
<data name="&gt;&gt;txtId6.Type" xml:space="preserve">
<value>System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;txtId6.Parent" xml:space="preserve">
<value>panTrojan</value>
</data>
<data name="&gt;&gt;txtId6.ZOrder" xml:space="preserve">
<value>2</value>
</data>
<data name="&gt;&gt;label14.Name" xml:space="preserve">
<value>label14</value>
</data>
<data name="&gt;&gt;label14.Type" xml:space="preserve">
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;label14.Parent" xml:space="preserve">
<value>panTrojan</value>
</data>
<data name="&gt;&gt;label14.ZOrder" xml:space="preserve">
<value>3</value>
</data>
<data name="panTrojan.Location" type="System.Drawing.Point, System.Drawing">
<value>534, 163</value>
</data>
<data name="panTrojan.Size" type="System.Drawing.Size, System.Drawing">
<value>82, 39</value>
</data>
<data name="panTrojan.TabIndex" type="System.Int32, mscorlib">
<value>29</value>
</data>
<data name="panTrojan.Visible" type="System.Boolean, mscorlib">
<value>False</value>
</data>
<data name="&gt;&gt;panTrojan.Name" xml:space="preserve">
<value>panTrojan</value>
</data>
<data name="&gt;&gt;panTrojan.Type" xml:space="preserve">
<value>System.Windows.Forms.Panel, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;panTrojan.Parent" xml:space="preserve">
<value>groupBox1</value>
</data>
<data name="&gt;&gt;panTrojan.ZOrder" xml:space="preserve">
<value>2</value>
</data>
<data name="&gt;&gt;label7.Name" xml:space="preserve">
<value>label7</value>
</data>
<data name="&gt;&gt;label7.Type" xml:space="preserve">
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;label7.Parent" xml:space="preserve">
<value>panVless</value>
</data>
<data name="&gt;&gt;label7.ZOrder" xml:space="preserve">
<value>0</value>
</data>
<data name="&gt;&gt;cmbFlow5.Name" xml:space="preserve">
<value>cmbFlow5</value>
</data>
<data name="&gt;&gt;cmbFlow5.Type" xml:space="preserve">
<value>System.Windows.Forms.ComboBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;cmbFlow5.Parent" xml:space="preserve">
<value>panVless</value>
</data>
<data name="&gt;&gt;cmbFlow5.ZOrder" xml:space="preserve">
<value>1</value>
</data>
<data name="&gt;&gt;txtId5.Name" xml:space="preserve">
<value>txtId5</value>
</data>
<data name="&gt;&gt;txtId5.Type" xml:space="preserve">
<value>System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;txtId5.Parent" xml:space="preserve">
<value>panVless</value>
</data>
<data name="&gt;&gt;txtId5.ZOrder" xml:space="preserve">
<value>2</value>
</data>
<data name="&gt;&gt;label9.Name" xml:space="preserve">
<value>label9</value>
</data>
<data name="&gt;&gt;label9.Type" xml:space="preserve">
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;label9.Parent" xml:space="preserve">
<value>panVless</value>
</data>
<data name="&gt;&gt;label9.ZOrder" xml:space="preserve">
<value>3</value>
</data>
<data name="&gt;&gt;label10.Name" xml:space="preserve">
<value>label10</value>
</data>
<data name="&gt;&gt;label10.Type" xml:space="preserve">
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;label10.Parent" xml:space="preserve">
<value>panVless</value>
</data>
<data name="&gt;&gt;label10.ZOrder" xml:space="preserve">
<value>4</value>
</data>
<data name="&gt;&gt;btnGUID5.Name" xml:space="preserve">
<value>btnGUID5</value>
</data>
<data name="&gt;&gt;btnGUID5.Type" xml:space="preserve">
<value>System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;btnGUID5.Parent" xml:space="preserve">
<value>panVless</value>
</data>
<data name="&gt;&gt;btnGUID5.ZOrder" xml:space="preserve">
<value>5</value>
</data>
<data name="&gt;&gt;cmbSecurity5.Name" xml:space="preserve">
<value>cmbSecurity5</value>
</data>
<data name="&gt;&gt;cmbSecurity5.Type" xml:space="preserve">
<value>System.Windows.Forms.ComboBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;cmbSecurity5.Parent" xml:space="preserve">
<value>panVless</value>
</data>
<data name="&gt;&gt;cmbSecurity5.ZOrder" xml:space="preserve">
<value>6</value>
</data>
<data name="&gt;&gt;label11.Name" xml:space="preserve">
<value>label11</value>
</data>
<data name="&gt;&gt;label11.Type" xml:space="preserve">
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;label11.Parent" xml:space="preserve">
<value>panVless</value>
</data>
<data name="&gt;&gt;label11.ZOrder" xml:space="preserve">
<value>7</value>
</data>
<data name="panVless.Location" type="System.Drawing.Point, System.Drawing">
<value>396, 166</value>
</data>
<data name="panVless.Size" type="System.Drawing.Size, System.Drawing">
<value>92, 36</value>
</data>
<data name="panVless.TabIndex" type="System.Int32, mscorlib">
<value>27</value>
</data>
<data name="panVless.Visible" type="System.Boolean, mscorlib">
<value>False</value>
</data>
<data name="&gt;&gt;panVless.Name" xml:space="preserve">
<value>panVless</value>
</data>
<data name="&gt;&gt;panVless.Type" xml:space="preserve">
<value>System.Windows.Forms.Panel, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;panVless.Parent" xml:space="preserve">
<value>groupBox1</value>
</data>
<data name="&gt;&gt;panVless.ZOrder" xml:space="preserve">
<value>3</value>
</data>
<data name="&gt;&gt;label3.Name" xml:space="preserve">
<value>label3</value>
</data>
<data name="&gt;&gt;label3.Type" xml:space="preserve">
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;label3.Parent" xml:space="preserve">
<value>panVmess</value>
</data>
<data name="&gt;&gt;label3.ZOrder" xml:space="preserve">
<value>0</value>
</data>
<data name="&gt;&gt;txtId.Name" xml:space="preserve">
<value>txtId</value>
</data>
<data name="&gt;&gt;txtId.Type" xml:space="preserve">
<value>System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;txtId.Parent" xml:space="preserve">
<value>panVmess</value>
</data>
<data name="&gt;&gt;txtId.ZOrder" xml:space="preserve">
<value>1</value>
</data>
<data name="&gt;&gt;btnGUID.Name" xml:space="preserve">
<value>btnGUID</value>
</data>
<data name="&gt;&gt;btnGUID.Type" xml:space="preserve">
<value>System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;btnGUID.Parent" xml:space="preserve">
<value>panVmess</value>
</data>
<data name="&gt;&gt;btnGUID.ZOrder" xml:space="preserve">
<value>2</value>
</data>
<data name="&gt;&gt;label4.Name" xml:space="preserve">
<value>label4</value>
</data>
<data name="&gt;&gt;label4.Type" xml:space="preserve">
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;label4.Parent" xml:space="preserve">
<value>panVmess</value>
</data>
<data name="&gt;&gt;label4.ZOrder" xml:space="preserve">
<value>3</value>
</data>
<data name="&gt;&gt;label8.Name" xml:space="preserve">
<value>label8</value>
</data>
<data name="&gt;&gt;label8.Type" xml:space="preserve">
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;label8.Parent" xml:space="preserve">
<value>panVmess</value>
</data>
<data name="&gt;&gt;label8.ZOrder" xml:space="preserve">
<value>4</value>
</data>
<data name="&gt;&gt;txtAlterId.Name" xml:space="preserve">
<value>txtAlterId</value>
</data>
<data name="&gt;&gt;txtAlterId.Type" xml:space="preserve">
<value>System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;txtAlterId.Parent" xml:space="preserve">
<value>panVmess</value>
</data>
<data name="&gt;&gt;txtAlterId.ZOrder" xml:space="preserve">
<value>5</value>
</data>
<data name="&gt;&gt;cmbSecurity.Name" xml:space="preserve">
<value>cmbSecurity</value>
</data>
<data name="&gt;&gt;cmbSecurity.Type" xml:space="preserve">
<value>System.Windows.Forms.ComboBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;cmbSecurity.Parent" xml:space="preserve">
<value>panVmess</value>
</data>
<data name="&gt;&gt;cmbSecurity.ZOrder" xml:space="preserve">
<value>6</value>
</data>
<data name="&gt;&gt;label5.Name" xml:space="preserve">
<value>label5</value>
</data>
<data name="&gt;&gt;label5.Type" xml:space="preserve">
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;label5.Parent" xml:space="preserve">
<value>panVmess</value>
</data>
<data name="&gt;&gt;label5.ZOrder" xml:space="preserve">
<value>7</value>
</data>
<data name="panVmess.Location" type="System.Drawing.Point, System.Drawing">
<value>16, 163</value>
</data>
<data name="panVmess.Size" type="System.Drawing.Size, System.Drawing">
<value>82, 39</value>
</data>
<data name="panVmess.TabIndex" type="System.Int32, mscorlib">
<value>25</value>
</data>
<data name="panVmess.Visible" type="System.Boolean, mscorlib">
<value>False</value>
</data>
<data name="&gt;&gt;panVmess.Name" xml:space="preserve">
<value>panVmess</value>
</data>
<data name="&gt;&gt;panVmess.Type" xml:space="preserve">
<value>System.Windows.Forms.Panel, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;panVmess.Parent" xml:space="preserve">
<value>groupBox1</value>
</data>
<data name="&gt;&gt;panVmess.ZOrder" xml:space="preserve">
<value>4</value>
</data>
<data name="&gt;&gt;cmbCoreType.Name" xml:space="preserve">
<value>cmbCoreType</value>
</data>
<data name="&gt;&gt;cmbCoreType.Type" xml:space="preserve">
<value>System.Windows.Forms.ComboBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;cmbCoreType.Parent" xml:space="preserve">
<value>panAddr</value>
</data>
<data name="&gt;&gt;cmbCoreType.ZOrder" xml:space="preserve">
<value>0</value>
</data>
<data name="&gt;&gt;labCoreType.Name" xml:space="preserve">
<value>labCoreType</value>
</data>
<data name="&gt;&gt;labCoreType.Type" xml:space="preserve">
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;labCoreType.Parent" xml:space="preserve">
<value>panAddr</value>
</data>
<data name="&gt;&gt;labCoreType.ZOrder" xml:space="preserve">
<value>1</value>
</data>
<data name="&gt;&gt;label6.Name" xml:space="preserve">
<value>label6</value>
</data>
<data name="&gt;&gt;label6.Type" xml:space="preserve">
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;label6.Parent" xml:space="preserve">
<value>panAddr</value>
</data>
<data name="&gt;&gt;label6.ZOrder" xml:space="preserve">
<value>2</value>
</data>
<data name="&gt;&gt;label1.Name" xml:space="preserve">
<value>label1</value>
</data>
<data name="&gt;&gt;label1.Type" xml:space="preserve">
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;label1.Parent" xml:space="preserve">
<value>panAddr</value>
</data>
<data name="&gt;&gt;label1.ZOrder" xml:space="preserve">
<value>3</value>
</data>
<data name="&gt;&gt;txtAddress.Name" xml:space="preserve">
<value>txtAddress</value>
</data>
<data name="&gt;&gt;txtAddress.Type" xml:space="preserve">
<value>System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;txtAddress.Parent" xml:space="preserve">
<value>panAddr</value>
</data>
<data name="&gt;&gt;txtAddress.ZOrder" xml:space="preserve">
<value>4</value>
</data>
<data name="&gt;&gt;label2.Name" xml:space="preserve">
<value>label2</value>
</data>
<data name="&gt;&gt;label2.Type" xml:space="preserve">
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;label2.Parent" xml:space="preserve">
<value>panAddr</value>
</data>
<data name="&gt;&gt;label2.ZOrder" xml:space="preserve">
<value>5</value>
</data>
<data name="&gt;&gt;txtPort.Name" xml:space="preserve">
<value>txtPort</value>
</data>
<data name="&gt;&gt;txtPort.Type" xml:space="preserve">
<value>System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;txtPort.Parent" xml:space="preserve">
<value>panAddr</value>
</data>
<data name="&gt;&gt;txtPort.ZOrder" xml:space="preserve">
<value>6</value>
</data>
<data name="&gt;&gt;txtRemarks.Name" xml:space="preserve">
<value>txtRemarks</value>
</data>
<data name="&gt;&gt;txtRemarks.Type" xml:space="preserve">
<value>System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;txtRemarks.Parent" xml:space="preserve">
<value>panAddr</value>
</data>
<data name="&gt;&gt;txtRemarks.ZOrder" xml:space="preserve">
<value>7</value>
</data>
<assembly alias="System.Windows.Forms" name="System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<data name="panAddr.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
<value>Top</value>
</data>
<data name="panAddr.Location" type="System.Drawing.Point, System.Drawing">
<value>3, 17</value>
</data>
<data name="panAddr.Size" type="System.Drawing.Size, System.Drawing">
<value>723, 100</value>
</data>
<data name="panAddr.TabIndex" type="System.Int32, mscorlib">
<value>24</value>
</data>
<data name="&gt;&gt;panAddr.Name" xml:space="preserve">
<value>panAddr</value>
</data>
<data name="&gt;&gt;panAddr.Type" xml:space="preserve">
<value>System.Windows.Forms.Panel, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;panAddr.Parent" xml:space="preserve">
<value>groupBox1</value>
</data>
<data name="&gt;&gt;panAddr.ZOrder" xml:space="preserve">
<value>5</value>
</data>
<data name="groupBox1.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
<value>Fill</value>
</data>
<data name="groupBox1.Location" type="System.Drawing.Point, System.Drawing">
<value>0, 10</value>
</data>
<data name="groupBox1.Size" type="System.Drawing.Size, System.Drawing">
<value>729, 226</value>
</data>
<data name="groupBox1.TabIndex" type="System.Int32, mscorlib">
<value>3</value>
</data>
<data name="groupBox1.Text" xml:space="preserve">
<value>Server</value>
</data>
<data name="&gt;&gt;groupBox1.Name" xml:space="preserve">
<value>groupBox1</value>
</data>
<data name="&gt;&gt;groupBox1.Type" xml:space="preserve">
<value>System.Windows.Forms.GroupBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;groupBox1.Parent" xml:space="preserve">
<value>$this</value>
</data>
<data name="&gt;&gt;groupBox1.ZOrder" xml:space="preserve">
<value>0</value>
</data>
<data name="label17.AutoSize" type="System.Boolean, mscorlib">
<value>True</value>
</data>
<assembly alias="System.Windows.Forms" name="System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<data name="label17.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
<value>NoControl</value>
</data>
@@ -246,30 +849,6 @@
<data name="&gt;&gt;txtId4.ZOrder" xml:space="preserve">
<value>3</value>
</data>
<data name="panSocks.Location" type="System.Drawing.Point, System.Drawing">
<value>303, 163</value>
</data>
<data name="panSocks.Size" type="System.Drawing.Size, System.Drawing">
<value>82, 39</value>
</data>
<data name="panSocks.TabIndex" type="System.Int32, mscorlib">
<value>31</value>
</data>
<data name="panSocks.Visible" type="System.Boolean, mscorlib">
<value>False</value>
</data>
<data name="&gt;&gt;panSocks.Name" xml:space="preserve">
<value>panSocks</value>
</data>
<data name="&gt;&gt;panSocks.Type" xml:space="preserve">
<value>System.Windows.Forms.Panel, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;panSocks.Parent" xml:space="preserve">
<value>groupBox1</value>
</data>
<data name="&gt;&gt;panSocks.ZOrder" xml:space="preserve">
<value>0</value>
</data>
<data name="txtId3.Location" type="System.Drawing.Point, System.Drawing">
<value>126, 7</value>
</data>
@@ -372,30 +951,6 @@
<data name="&gt;&gt;label16.ZOrder" xml:space="preserve">
<value>3</value>
</data>
<data name="panSs.Location" type="System.Drawing.Point, System.Drawing">
<value>142, 163</value>
</data>
<data name="panSs.Size" type="System.Drawing.Size, System.Drawing">
<value>82, 39</value>
</data>
<data name="panSs.TabIndex" type="System.Int32, mscorlib">
<value>30</value>
</data>
<data name="panSs.Visible" type="System.Boolean, mscorlib">
<value>False</value>
</data>
<data name="&gt;&gt;panSs.Name" xml:space="preserve">
<value>panSs</value>
</data>
<data name="&gt;&gt;panSs.Type" xml:space="preserve">
<value>System.Windows.Forms.Panel, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;panSs.Parent" xml:space="preserve">
<value>groupBox1</value>
</data>
<data name="&gt;&gt;panSs.ZOrder" xml:space="preserve">
<value>1</value>
</data>
<data name="label12.AutoSize" type="System.Boolean, mscorlib">
<value>True</value>
</data>
@@ -498,30 +1053,6 @@
<data name="&gt;&gt;label14.ZOrder" xml:space="preserve">
<value>3</value>
</data>
<data name="panTrojan.Location" type="System.Drawing.Point, System.Drawing">
<value>534, 163</value>
</data>
<data name="panTrojan.Size" type="System.Drawing.Size, System.Drawing">
<value>82, 39</value>
</data>
<data name="panTrojan.TabIndex" type="System.Int32, mscorlib">
<value>29</value>
</data>
<data name="panTrojan.Visible" type="System.Boolean, mscorlib">
<value>False</value>
</data>
<data name="&gt;&gt;panTrojan.Name" xml:space="preserve">
<value>panTrojan</value>
</data>
<data name="&gt;&gt;panTrojan.Type" xml:space="preserve">
<value>System.Windows.Forms.Panel, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;panTrojan.Parent" xml:space="preserve">
<value>groupBox1</value>
</data>
<data name="&gt;&gt;panTrojan.ZOrder" xml:space="preserve">
<value>2</value>
</data>
<data name="label7.AutoSize" type="System.Boolean, mscorlib">
<value>True</value>
</data>
@@ -735,30 +1266,6 @@
<data name="&gt;&gt;label11.ZOrder" xml:space="preserve">
<value>7</value>
</data>
<data name="panVless.Location" type="System.Drawing.Point, System.Drawing">
<value>396, 166</value>
</data>
<data name="panVless.Size" type="System.Drawing.Size, System.Drawing">
<value>92, 36</value>
</data>
<data name="panVless.TabIndex" type="System.Int32, mscorlib">
<value>27</value>
</data>
<data name="panVless.Visible" type="System.Boolean, mscorlib">
<value>False</value>
</data>
<data name="&gt;&gt;panVless.Name" xml:space="preserve">
<value>panVless</value>
</data>
<data name="&gt;&gt;panVless.Type" xml:space="preserve">
<value>System.Windows.Forms.Panel, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;panVless.Parent" xml:space="preserve">
<value>groupBox1</value>
</data>
<data name="&gt;&gt;panVless.ZOrder" xml:space="preserve">
<value>3</value>
</data>
<data name="label3.AutoSize" type="System.Boolean, mscorlib">
<value>True</value>
</data>
@@ -954,30 +1461,6 @@
<data name="&gt;&gt;label5.ZOrder" xml:space="preserve">
<value>7</value>
</data>
<data name="panVmess.Location" type="System.Drawing.Point, System.Drawing">
<value>16, 163</value>
</data>
<data name="panVmess.Size" type="System.Drawing.Size, System.Drawing">
<value>82, 39</value>
</data>
<data name="panVmess.TabIndex" type="System.Int32, mscorlib">
<value>25</value>
</data>
<data name="panVmess.Visible" type="System.Boolean, mscorlib">
<value>False</value>
</data>
<data name="&gt;&gt;panVmess.Name" xml:space="preserve">
<value>panVmess</value>
</data>
<data name="&gt;&gt;panVmess.Type" xml:space="preserve">
<value>System.Windows.Forms.Panel, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;panVmess.Parent" xml:space="preserve">
<value>groupBox1</value>
</data>
<data name="&gt;&gt;panVmess.ZOrder" xml:space="preserve">
<value>4</value>
</data>
<data name="cmbCoreType.Location" type="System.Drawing.Point, System.Drawing">
<value>625, 8</value>
</data>
@@ -1173,56 +1656,41 @@
<data name="&gt;&gt;txtRemarks.ZOrder" xml:space="preserve">
<value>7</value>
</data>
<data name="panAddr.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
<value>Top</value>
<data name="&gt;&gt;btnOK.Name" xml:space="preserve">
<value>btnOK</value>
</data>
<data name="panAddr.Location" type="System.Drawing.Point, System.Drawing">
<value>3, 17</value>
<data name="&gt;&gt;btnOK.Type" xml:space="preserve">
<value>System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="panAddr.Size" type="System.Drawing.Size, System.Drawing">
<value>723, 100</value>
<data name="&gt;&gt;btnOK.Parent" xml:space="preserve">
<value>panBottom</value>
</data>
<data name="panAddr.TabIndex" type="System.Int32, mscorlib">
<value>24</value>
<data name="&gt;&gt;btnOK.ZOrder" xml:space="preserve">
<value>1</value>
</data>
<data name="&gt;&gt;panAddr.Name" xml:space="preserve">
<value>panAddr</value>
<data name="panBottom.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
<value>Bottom</value>
</data>
<data name="&gt;&gt;panAddr.Type" xml:space="preserve">
<data name="panBottom.Location" type="System.Drawing.Point, System.Drawing">
<value>0, 501</value>
</data>
<data name="panBottom.Size" type="System.Drawing.Size, System.Drawing">
<value>729, 60</value>
</data>
<data name="panBottom.TabIndex" type="System.Int32, mscorlib">
<value>7</value>
</data>
<data name="&gt;&gt;panBottom.Name" xml:space="preserve">
<value>panBottom</value>
</data>
<data name="&gt;&gt;panBottom.Type" xml:space="preserve">
<value>System.Windows.Forms.Panel, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;panAddr.Parent" xml:space="preserve">
<value>groupBox1</value>
</data>
<data name="&gt;&gt;panAddr.ZOrder" xml:space="preserve">
<value>5</value>
</data>
<data name="groupBox1.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
<value>Fill</value>
</data>
<data name="groupBox1.Location" type="System.Drawing.Point, System.Drawing">
<value>0, 10</value>
</data>
<data name="groupBox1.Size" type="System.Drawing.Size, System.Drawing">
<value>729, 221</value>
</data>
<data name="groupBox1.TabIndex" type="System.Int32, mscorlib">
<value>3</value>
</data>
<data name="groupBox1.Text" xml:space="preserve">
<value>Server</value>
</data>
<data name="&gt;&gt;groupBox1.Name" xml:space="preserve">
<value>groupBox1</value>
</data>
<data name="&gt;&gt;groupBox1.Type" xml:space="preserve">
<value>System.Windows.Forms.GroupBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;groupBox1.Parent" xml:space="preserve">
<data name="&gt;&gt;panBottom.Parent" xml:space="preserve">
<value>$this</value>
</data>
<data name="&gt;&gt;groupBox1.ZOrder" xml:space="preserve">
<value>0</value>
<data name="&gt;&gt;panBottom.ZOrder" xml:space="preserve">
<value>2</value>
</data>
<data name="btnOK.Location" type="System.Drawing.Point, System.Drawing">
<value>303, 17</value>
@@ -1248,30 +1716,6 @@
<data name="&gt;&gt;btnOK.ZOrder" xml:space="preserve">
<value>1</value>
</data>
<data name="panBottom.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
<value>Bottom</value>
</data>
<data name="panBottom.Location" type="System.Drawing.Point, System.Drawing">
<value>0, 461</value>
</data>
<data name="panBottom.Size" type="System.Drawing.Size, System.Drawing">
<value>729, 60</value>
</data>
<data name="panBottom.TabIndex" type="System.Int32, mscorlib">
<value>7</value>
</data>
<data name="&gt;&gt;panBottom.Name" xml:space="preserve">
<value>panBottom</value>
</data>
<data name="&gt;&gt;panBottom.Type" xml:space="preserve">
<value>System.Windows.Forms.Panel, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;panBottom.Parent" xml:space="preserve">
<value>$this</value>
</data>
<data name="&gt;&gt;panBottom.ZOrder" xml:space="preserve">
<value>2</value>
</data>
<data name="panTop.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
<value>Top</value>
</data>
@@ -1303,7 +1747,7 @@
<value>0, 0</value>
</data>
<data name="transportControl.Size" type="System.Drawing.Size, System.Drawing">
<value>729, 230</value>
<value>729, 265</value>
</data>
<data name="transportControl.TabIndex" type="System.Int32, mscorlib">
<value>0</value>
@@ -1312,7 +1756,7 @@
<value>transportControl</value>
</data>
<data name="&gt;&gt;transportControl.Type" xml:space="preserve">
<value>v2rayN.Forms.ServerTransportControl, v2rayN, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null</value>
<value>v2rayN.Forms.ServerTransportControl, v2rayN, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null</value>
</data>
<data name="&gt;&gt;transportControl.Parent" xml:space="preserve">
<value>panTran</value>
@@ -1324,10 +1768,10 @@
<value>Bottom</value>
</data>
<data name="panTran.Location" type="System.Drawing.Point, System.Drawing">
<value>0, 231</value>
<value>0, 236</value>
</data>
<data name="panTran.Size" type="System.Drawing.Size, System.Drawing">
<value>729, 230</value>
<value>729, 265</value>
</data>
<data name="panTran.TabIndex" type="System.Int32, mscorlib">
<value>9</value>
@@ -1354,7 +1798,7 @@
<value>6, 12</value>
</data>
<data name="$this.ClientSize" type="System.Drawing.Size, System.Drawing">
<value>729, 521</value>
<value>729, 561</value>
</data>
<data name="$this.Text" xml:space="preserve">
<value>Edit or add a [VMess] server</value>
@@ -1363,6 +1807,6 @@
<value>AddServerForm</value>
</data>
<data name="&gt;&gt;$this.Type" xml:space="preserve">
<value>v2rayN.Forms.BaseServerForm, v2rayN, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null</value>
<value>v2rayN.Forms.BaseServerForm, v2rayN, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null</value>
</data>
</root>

View File

@@ -68,9 +68,9 @@
this.menuExport2ServerConfig = new System.Windows.Forms.ToolStripMenuItem();
this.menuExport2ShareUrl = new System.Windows.Forms.ToolStripMenuItem();
this.menuExport2SubContent = new System.Windows.Forms.ToolStripMenuItem();
this.tsbServer = new System.Windows.Forms.ToolStripDropDownButton();
this.tabGroup = new System.Windows.Forms.TabControl();
this.qrCodeControl = new v2rayN.Forms.QRCodeControl();
this.tsbServer = new System.Windows.Forms.ToolStripDropDownButton();
this.scBig = new System.Windows.Forms.SplitContainer();
this.gbServers = new System.Windows.Forms.GroupBox();
this.mainMsgControl = new v2rayN.Forms.MainMsgControl();
@@ -107,6 +107,7 @@
this.tsbGroupSetting = new System.Windows.Forms.ToolStripMenuItem();
this.toolStripSeparator14 = new System.Windows.Forms.ToolStripSeparator();
this.tsbBackupGuiNConfig = new System.Windows.Forms.ToolStripMenuItem();
this.tsbRestoreGuiNConfig = new System.Windows.Forms.ToolStripMenuItem();
this.toolStripSeparator5 = new System.Windows.Forms.ToolStripSeparator();
this.tsbReload = new System.Windows.Forms.ToolStripButton();
this.toolStripSeparator7 = new System.Windows.Forms.ToolStripSeparator();
@@ -130,7 +131,6 @@
this.tsbPromotion = new System.Windows.Forms.ToolStripButton();
this.toolStripSeparator11 = new System.Windows.Forms.ToolStripSeparator();
this.tsbClose = new System.Windows.Forms.ToolStripButton();
this.tsbRestoreGuiNConfig = new System.Windows.Forms.ToolStripMenuItem();
((System.ComponentModel.ISupportInitialize)(this.scServers)).BeginInit();
this.scServers.Panel1.SuspendLayout();
this.scServers.Panel2.SuspendLayout();
@@ -430,6 +430,13 @@
resources.ApplyResources(this.menuExport2SubContent, "menuExport2SubContent");
this.menuExport2SubContent.Click += new System.EventHandler(this.menuExport2SubContent_Click);
//
// tsbServer
//
this.tsbServer.DropDown = this.cmsLv;
this.tsbServer.Image = global::v2rayN.Properties.Resources.server;
resources.ApplyResources(this.tsbServer, "tsbServer");
this.tsbServer.Name = "tsbServer";
//
// tabGroup
//
resources.ApplyResources(this.tabGroup, "tabGroup");
@@ -442,13 +449,6 @@
resources.ApplyResources(this.qrCodeControl, "qrCodeControl");
this.qrCodeControl.Name = "qrCodeControl";
//
// tsbServer
//
this.tsbServer.DropDown = this.cmsLv;
this.tsbServer.Image = global::v2rayN.Properties.Resources.server;
resources.ApplyResources(this.tsbServer, "tsbServer");
this.tsbServer.Name = "tsbServer";
//
// scBig
//
resources.ApplyResources(this.scBig, "scBig");
@@ -715,6 +715,12 @@
resources.ApplyResources(this.tsbBackupGuiNConfig, "tsbBackupGuiNConfig");
this.tsbBackupGuiNConfig.Click += new System.EventHandler(this.tsbBackupGuiNConfig_Click);
//
// tsbRestoreGuiNConfig
//
this.tsbRestoreGuiNConfig.Name = "tsbRestoreGuiNConfig";
resources.ApplyResources(this.tsbRestoreGuiNConfig, "tsbRestoreGuiNConfig");
this.tsbRestoreGuiNConfig.Click += new System.EventHandler(this.tsbRestoreGuiNConfig_Click);
//
// toolStripSeparator5
//
this.toolStripSeparator5.Name = "toolStripSeparator5";
@@ -866,12 +872,6 @@
this.tsbClose.Name = "tsbClose";
this.tsbClose.Click += new System.EventHandler(this.tsbClose_Click);
//
// tsbRestoreGuiNConfig
//
this.tsbRestoreGuiNConfig.Name = "tsbRestoreGuiNConfig";
resources.ApplyResources(this.tsbRestoreGuiNConfig, "tsbRestoreGuiNConfig");
this.tsbRestoreGuiNConfig.Click += new System.EventHandler(this.tsbRestoreGuiNConfig_Click);
//
// MainForm
//
resources.ApplyResources(this, "$this");

View File

@@ -1268,6 +1268,7 @@ namespace v2rayN.Forms
AppendText(false, msg);
if (success)
{
RefreshServers();
Global.reloadV2ray = true;
await LoadV2ray();
}
@@ -1369,20 +1370,22 @@ namespace v2rayN.Forms
private void tsbCheckUpdateN_Click(object sender, EventArgs e)
{
void _updateUI(bool success, string msg)
{
AppendText(false, msg);
if (success)
{
menuExit_Click(null, null);
}
};
(new UpdateHandle()).CheckUpdateGuiN(config, _updateUI, config.checkPreReleaseUpdate);
Process.Start(Global.UpdateUrl);
//void _updateUI(bool success, string msg)
//{
// AppendText(false, msg);
// if (success)
// {
// menuExit_Click(null, null);
// }
//};
//(new UpdateHandle()).CheckUpdateGuiN(config, _updateUI, config.checkPreReleaseUpdate);
}
private void tsbCheckUpdateCore_Click(object sender, EventArgs e)
{
CheckUpdateCore(ECoreType.v2fly);
CheckUpdateCore(ECoreType.v2fly_v5);
}
private void tsbCheckUpdateSagerNetCore_Click(object sender, EventArgs e)

View File

@@ -123,181 +123,205 @@
</data>
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<data name="scServers.Location" type="System.Drawing.Point, System.Drawing">
<value>3, 17</value>
<value>3, 21</value>
</data>
<metadata name="cmsLv.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>226, 19</value>
</metadata>
<data name="menuAddVmessServer.Size" type="System.Drawing.Size, System.Drawing">
<value>355, 22</value>
<value>423, 24</value>
</data>
<data name="menuAddVmessServer.Text" xml:space="preserve">
<value>Add [VMess] server</value>
</data>
<data name="menuAddVlessServer.Size" type="System.Drawing.Size, System.Drawing">
<value>355, 22</value>
<value>423, 24</value>
</data>
<data name="menuAddVlessServer.Text" xml:space="preserve">
<value>Add [VLESS] server</value>
</data>
<data name="menuAddShadowsocksServer.Size" type="System.Drawing.Size, System.Drawing">
<value>355, 22</value>
<value>423, 24</value>
</data>
<data name="menuAddShadowsocksServer.Text" xml:space="preserve">
<value>Add [Shadowsocks] server</value>
</data>
<data name="menuAddSocksServer.Size" type="System.Drawing.Size, System.Drawing">
<value>355, 22</value>
<value>423, 24</value>
</data>
<data name="menuAddSocksServer.Text" xml:space="preserve">
<value>Add [Socks] server</value>
</data>
<data name="menuAddTrojanServer.Size" type="System.Drawing.Size, System.Drawing">
<value>355, 22</value>
<value>423, 24</value>
</data>
<data name="menuAddTrojanServer.Text" xml:space="preserve">
<value>Add [Trojan] server</value>
</data>
<data name="menuAddCustomServer.Size" type="System.Drawing.Size, System.Drawing">
<value>355, 22</value>
<value>423, 24</value>
</data>
<data name="menuAddCustomServer.Text" xml:space="preserve">
<value>Add a custom configuration server</value>
</data>
<data name="menuAddServers.Size" type="System.Drawing.Size, System.Drawing">
<value>355, 22</value>
<value>423, 24</value>
</data>
<data name="menuAddServers.Text" xml:space="preserve">
<value>Import bulk URL from clipboard (Ctrl+V)</value>
</data>
<data name="menuScanScreen.Size" type="System.Drawing.Size, System.Drawing">
<value>355, 22</value>
<value>423, 24</value>
</data>
<data name="menuScanScreen.Text" xml:space="preserve">
<value>Scan QR code on the screen (Ctrl+S)</value>
</data>
<data name="toolStripSeparator1.Size" type="System.Drawing.Size, System.Drawing">
<value>352, 6</value>
<value>420, 6</value>
</data>
<data name="menuServerFilter.Size" type="System.Drawing.Size, System.Drawing">
<value>355, 22</value>
<value>423, 24</value>
</data>
<data name="menuServerFilter.Text" xml:space="preserve">
<value>Set server filter (Ctrl+F)</value>
</data>
<data name="menuRemoveServer.Size" type="System.Drawing.Size, System.Drawing">
<value>355, 22</value>
<value>423, 24</value>
</data>
<data name="menuRemoveServer.Text" xml:space="preserve">
<value>Remove selected servers (Delete)</value>
</data>
<data name="menuRemoveDuplicateServer.Size" type="System.Drawing.Size, System.Drawing">
<value>355, 22</value>
<value>423, 24</value>
</data>
<data name="menuRemoveDuplicateServer.Text" xml:space="preserve">
<value>Remove duplicate servers</value>
</data>
<data name="menuCopyServer.Size" type="System.Drawing.Size, System.Drawing">
<value>355, 22</value>
<value>423, 24</value>
</data>
<data name="menuCopyServer.Text" xml:space="preserve">
<value>Clone selected server</value>
</data>
<data name="menuSetDefaultServer.Size" type="System.Drawing.Size, System.Drawing">
<value>355, 22</value>
<value>423, 24</value>
</data>
<data name="menuSetDefaultServer.Text" xml:space="preserve">
<value>Set as active server (Enter)</value>
</data>
<data name="toolStripSeparator3.Size" type="System.Drawing.Size, System.Drawing">
<value>352, 6</value>
<value>420, 6</value>
</data>
<data name="menuMoveToGroup.Size" type="System.Drawing.Size, System.Drawing">
<value>355, 22</value>
<value>423, 24</value>
</data>
<data name="menuMoveToGroup.Text" xml:space="preserve">
<value>Move to Group</value>
</data>
<data name="menuMoveTop.Size" type="System.Drawing.Size, System.Drawing">
<value>237, 26</value>
</data>
<data name="menuMoveTop.Text" xml:space="preserve">
<value>Move to top (T)</value>
</data>
<data name="menuMoveUp.Size" type="System.Drawing.Size, System.Drawing">
<value>237, 26</value>
</data>
<data name="menuMoveUp.Text" xml:space="preserve">
<value>Up (U)</value>
</data>
<data name="menuMoveDown.Size" type="System.Drawing.Size, System.Drawing">
<value>237, 26</value>
</data>
<data name="menuMoveDown.Text" xml:space="preserve">
<value>Down (D)</value>
</data>
<data name="menuMoveBottom.Size" type="System.Drawing.Size, System.Drawing">
<value>237, 26</value>
</data>
<data name="menuMoveBottom.Text" xml:space="preserve">
<value>Move to bottom (B)</value>
</data>
<data name="menuMoveEvent.Size" type="System.Drawing.Size, System.Drawing">
<value>355, 22</value>
<value>423, 24</value>
</data>
<data name="menuMoveEvent.Text" xml:space="preserve">
<value>Move to</value>
</data>
<data name="menuSelectAll.Size" type="System.Drawing.Size, System.Drawing">
<value>355, 22</value>
<value>423, 24</value>
</data>
<data name="menuSelectAll.Text" xml:space="preserve">
<value>Select All (Ctrl+A)</value>
</data>
<data name="toolStripSeparator9.Size" type="System.Drawing.Size, System.Drawing">
<value>352, 6</value>
<value>420, 6</value>
</data>
<data name="menuPingServer.Size" type="System.Drawing.Size, System.Drawing">
<value>355, 22</value>
<value>423, 24</value>
</data>
<data name="menuPingServer.Text" xml:space="preserve">
<value>Test servers ping (Ctrl+P)</value>
</data>
<data name="menuTcpingServer.Size" type="System.Drawing.Size, System.Drawing">
<value>355, 22</value>
<value>423, 24</value>
</data>
<data name="menuTcpingServer.Text" xml:space="preserve">
<value>Test servers with tcping (Ctrl+O)</value>
</data>
<data name="menuRealPingServer.Size" type="System.Drawing.Size, System.Drawing">
<value>355, 22</value>
<value>423, 24</value>
</data>
<data name="menuRealPingServer.Text" xml:space="preserve">
<value>Test servers real delay (Ctrl+R)</value>
</data>
<data name="menuSpeedServer.Size" type="System.Drawing.Size, System.Drawing">
<value>355, 22</value>
<value>423, 24</value>
</data>
<data name="menuSpeedServer.Text" xml:space="preserve">
<value>Test servers download speed (Ctrl+T)</value>
</data>
<data name="menuSortServerResult.Size" type="System.Drawing.Size, System.Drawing">
<value>355, 22</value>
<value>423, 24</value>
</data>
<data name="menuSortServerResult.Text" xml:space="preserve">
<value>Sort by test result (Ctrl+E)</value>
</data>
<data name="tsbTestMe.Size" type="System.Drawing.Size, System.Drawing">
<value>355, 22</value>
<value>423, 24</value>
</data>
<data name="tsbTestMe.Text" xml:space="preserve">
<value>Test current service status</value>
</data>
<data name="menuClearServerStatistics.Size" type="System.Drawing.Size, System.Drawing">
<value>355, 22</value>
<value>423, 24</value>
</data>
<data name="menuClearServerStatistics.Text" xml:space="preserve">
<value>Clear all service statistics</value>
</data>
<data name="toolStripSeparator6.Size" type="System.Drawing.Size, System.Drawing">
<value>352, 6</value>
<value>420, 6</value>
</data>
<data name="menuExport2ClientConfig.Size" type="System.Drawing.Size, System.Drawing">
<value>355, 22</value>
<value>423, 24</value>
</data>
<data name="menuExport2ClientConfig.Text" xml:space="preserve">
<value>Export selected server for client configuration</value>
</data>
<data name="menuExport2ServerConfig.Size" type="System.Drawing.Size, System.Drawing">
<value>355, 22</value>
<value>423, 24</value>
</data>
<data name="menuExport2ServerConfig.Text" xml:space="preserve">
<value>Export selected server for server configuration</value>
</data>
<data name="menuExport2ShareUrl.Size" type="System.Drawing.Size, System.Drawing">
<value>355, 22</value>
<value>423, 24</value>
</data>
<data name="menuExport2ShareUrl.Text" xml:space="preserve">
<value>Export share URLs to clipboard (Ctrl+C)</value>
</data>
<data name="menuExport2SubContent.Size" type="System.Drawing.Size, System.Drawing">
<value>355, 22</value>
<value>423, 24</value>
</data>
<data name="menuExport2SubContent.Text" xml:space="preserve">
<value>Export subscription (base64) share to clipboard</value>
@@ -306,7 +330,7 @@
<value>Magenta</value>
</data>
<data name="tsbServer.Size" type="System.Drawing.Size, System.Drawing">
<value>64, 53</value>
<value>77, 56</value>
</data>
<data name="tsbServer.Text" xml:space="preserve">
<value>Servers</value>
@@ -315,7 +339,7 @@
<value>ImageAboveText</value>
</data>
<data name="cmsLv.Size" type="System.Drawing.Size, System.Drawing">
<value>356, 622</value>
<value>424, 676</value>
</data>
<data name="&gt;&gt;cmsLv.Name" xml:space="preserve">
<value>cmsLv</value>
@@ -344,10 +368,10 @@
</value>
</data>
<data name="lvServers.Location" type="System.Drawing.Point, System.Drawing">
<value>0, 20</value>
<value>0, 24</value>
</data>
<data name="lvServers.Size" type="System.Drawing.Size, System.Drawing">
<value>686, 260</value>
<value>1003, 334</value>
</data>
<assembly alias="mscorlib" name="mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<data name="lvServers.TabIndex" type="System.Int32, mscorlib">
@@ -357,7 +381,7 @@
<value>lvServers</value>
</data>
<data name="&gt;&gt;lvServers.Type" xml:space="preserve">
<value>v2rayN.Base.ListViewFlickerFree, v2rayN, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null</value>
<value>v2rayN.Base.ListViewFlickerFree, v2rayN, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null</value>
</data>
<data name="&gt;&gt;lvServers.Parent" xml:space="preserve">
<value>scServers.Panel1</value>
@@ -372,7 +396,7 @@
<value>0, 0</value>
</data>
<data name="tabGroup.Size" type="System.Drawing.Size, System.Drawing">
<value>686, 20</value>
<value>1003, 24</value>
</data>
<data name="tabGroup.TabIndex" type="System.Int32, mscorlib">
<value>0</value>
@@ -411,7 +435,7 @@
<value>4, 4, 4, 4</value>
</data>
<data name="qrCodeControl.Size" type="System.Drawing.Size, System.Drawing">
<value>256, 280</value>
<value>256, 358</value>
</data>
<data name="qrCodeControl.TabIndex" type="System.Int32, mscorlib">
<value>2</value>
@@ -420,7 +444,7 @@
<value>qrCodeControl</value>
</data>
<data name="&gt;&gt;qrCodeControl.Type" xml:space="preserve">
<value>v2rayN.Forms.QRCodeControl, v2rayN, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null</value>
<value>v2rayN.Forms.QRCodeControl, v2rayN, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null</value>
</data>
<data name="&gt;&gt;qrCodeControl.Parent" xml:space="preserve">
<value>scServers.Panel2</value>
@@ -444,10 +468,10 @@
<value>100</value>
</data>
<data name="scServers.Size" type="System.Drawing.Size, System.Drawing">
<value>946, 280</value>
<value>1263, 358</value>
</data>
<data name="scServers.SplitterDistance" type="System.Int32, mscorlib">
<value>686</value>
<value>1003</value>
</data>
<data name="scServers.TabIndex" type="System.Int32, mscorlib">
<value>0</value>
@@ -464,35 +488,11 @@
<data name="&gt;&gt;scServers.ZOrder" xml:space="preserve">
<value>0</value>
</data>
<data name="menuMoveTop.Size" type="System.Drawing.Size, System.Drawing">
<value>192, 22</value>
</data>
<data name="menuMoveTop.Text" xml:space="preserve">
<value>Move to top (T)</value>
</data>
<data name="menuMoveUp.Size" type="System.Drawing.Size, System.Drawing">
<value>192, 22</value>
</data>
<data name="menuMoveUp.Text" xml:space="preserve">
<value>Up (U)</value>
</data>
<data name="menuMoveDown.Size" type="System.Drawing.Size, System.Drawing">
<value>192, 22</value>
</data>
<data name="menuMoveDown.Text" xml:space="preserve">
<value>Down (D)</value>
</data>
<data name="menuMoveBottom.Size" type="System.Drawing.Size, System.Drawing">
<value>192, 22</value>
</data>
<data name="menuMoveBottom.Text" xml:space="preserve">
<value>Move to bottom (B)</value>
</data>
<data name="scBig.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
<value>Fill</value>
</data>
<data name="scBig.Location" type="System.Drawing.Point, System.Drawing">
<value>0, 66</value>
<value>0, 69</value>
</data>
<data name="scBig.Orientation" type="System.Windows.Forms.Orientation, System.Windows.Forms">
<value>Horizontal</value>
@@ -504,7 +504,7 @@
<value>0, 0</value>
</data>
<data name="gbServers.Size" type="System.Drawing.Size, System.Drawing">
<value>952, 300</value>
<value>1269, 382</value>
</data>
<data name="gbServers.TabIndex" type="System.Int32, mscorlib">
<value>0</value>
@@ -539,8 +539,11 @@
<data name="mainMsgControl.Location" type="System.Drawing.Point, System.Drawing">
<value>0, 0</value>
</data>
<data name="mainMsgControl.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>4, 4, 4, 4</value>
</data>
<data name="mainMsgControl.Size" type="System.Drawing.Size, System.Drawing">
<value>952, 223</value>
<value>1269, 286</value>
</data>
<data name="mainMsgControl.TabIndex" type="System.Int32, mscorlib">
<value>0</value>
@@ -549,7 +552,7 @@
<value>mainMsgControl</value>
</data>
<data name="&gt;&gt;mainMsgControl.Type" xml:space="preserve">
<value>v2rayN.Forms.MainMsgControl, v2rayN, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null</value>
<value>v2rayN.Forms.MainMsgControl, v2rayN, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null</value>
</data>
<data name="&gt;&gt;mainMsgControl.Parent" xml:space="preserve">
<value>scBig.Panel2</value>
@@ -570,10 +573,10 @@
<value>1</value>
</data>
<data name="scBig.Size" type="System.Drawing.Size, System.Drawing">
<value>952, 527</value>
<value>1269, 672</value>
</data>
<data name="scBig.SplitterDistance" type="System.Int32, mscorlib">
<value>300</value>
<value>382</value>
</data>
<data name="scBig.TabIndex" type="System.Int32, mscorlib">
<value>5</value>
@@ -599,8 +602,80 @@
<data name="cmsMain.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
<value>NoControl</value>
</data>
<data name="menuKeepClear.Size" type="System.Drawing.Size, System.Drawing">
<value>300, 26</value>
</data>
<data name="menuKeepClear.Text" xml:space="preserve">
<value>Clear system proxy</value>
</data>
<data name="menuGlobal.Size" type="System.Drawing.Size, System.Drawing">
<value>300, 26</value>
</data>
<data name="menuGlobal.Text" xml:space="preserve">
<value>Set system proxy</value>
</data>
<data name="menuKeepNothing.Size" type="System.Drawing.Size, System.Drawing">
<value>300, 26</value>
</data>
<data name="menuKeepNothing.Text" xml:space="preserve">
<value>Do not change system proxy</value>
</data>
<data name="menuSysAgentMode.Size" type="System.Drawing.Size, System.Drawing">
<value>332, 24</value>
</data>
<data name="menuSysAgentMode.Text" xml:space="preserve">
<value>System proxy</value>
</data>
<data name="menuRoutings.Size" type="System.Drawing.Size, System.Drawing">
<value>332, 24</value>
</data>
<data name="menuRoutings.Text" xml:space="preserve">
<value>Routing</value>
</data>
<data name="menuServers.Size" type="System.Drawing.Size, System.Drawing">
<value>332, 24</value>
</data>
<data name="menuServers.Text" xml:space="preserve">
<value>Server</value>
</data>
<data name="toolStripSeparator13.Size" type="System.Drawing.Size, System.Drawing">
<value>329, 6</value>
</data>
<data name="menuAddServers2.Size" type="System.Drawing.Size, System.Drawing">
<value>332, 24</value>
</data>
<data name="menuAddServers2.Text" xml:space="preserve">
<value>Import bulk URL from clipboard</value>
</data>
<data name="menuScanScreen2.Size" type="System.Drawing.Size, System.Drawing">
<value>332, 24</value>
</data>
<data name="menuScanScreen2.Text" xml:space="preserve">
<value>Scan QR code on the screen</value>
</data>
<data name="menuUpdateSubscriptions.Size" type="System.Drawing.Size, System.Drawing">
<value>332, 24</value>
</data>
<data name="menuUpdateSubscriptions.Text" xml:space="preserve">
<value>Update subscription without proxy</value>
</data>
<data name="menuUpdateSubViaProxy.Size" type="System.Drawing.Size, System.Drawing">
<value>332, 24</value>
</data>
<data name="menuUpdateSubViaProxy.Text" xml:space="preserve">
<value>Update subscriptions via proxy</value>
</data>
<data name="toolStripSeparator2.Size" type="System.Drawing.Size, System.Drawing">
<value>329, 6</value>
</data>
<data name="menuExit.Size" type="System.Drawing.Size, System.Drawing">
<value>332, 24</value>
</data>
<data name="menuExit.Text" xml:space="preserve">
<value>Exit</value>
</data>
<data name="cmsMain.Size" type="System.Drawing.Size, System.Drawing">
<value>278, 192</value>
<value>333, 208</value>
</data>
<data name="&gt;&gt;cmsMain.Name" xml:space="preserve">
<value>cmsMain</value>
@@ -614,86 +689,14 @@
<data name="notifyMain.Visible" type="System.Boolean, mscorlib">
<value>True</value>
</data>
<data name="menuSysAgentMode.Size" type="System.Drawing.Size, System.Drawing">
<value>277, 22</value>
</data>
<data name="menuSysAgentMode.Text" xml:space="preserve">
<value>System proxy</value>
</data>
<data name="menuKeepClear.Size" type="System.Drawing.Size, System.Drawing">
<value>243, 22</value>
</data>
<data name="menuKeepClear.Text" xml:space="preserve">
<value>Clear system proxy</value>
</data>
<data name="menuGlobal.Size" type="System.Drawing.Size, System.Drawing">
<value>243, 22</value>
</data>
<data name="menuGlobal.Text" xml:space="preserve">
<value>Set system proxy</value>
</data>
<data name="menuKeepNothing.Size" type="System.Drawing.Size, System.Drawing">
<value>243, 22</value>
</data>
<data name="menuKeepNothing.Text" xml:space="preserve">
<value>Do not change system proxy</value>
</data>
<data name="menuRoutings.Size" type="System.Drawing.Size, System.Drawing">
<value>277, 22</value>
</data>
<data name="menuRoutings.Text" xml:space="preserve">
<value>Routing</value>
</data>
<data name="menuServers.Size" type="System.Drawing.Size, System.Drawing">
<value>277, 22</value>
</data>
<data name="menuServers.Text" xml:space="preserve">
<value>Server</value>
</data>
<data name="toolStripSeparator13.Size" type="System.Drawing.Size, System.Drawing">
<value>274, 6</value>
</data>
<data name="menuAddServers2.Size" type="System.Drawing.Size, System.Drawing">
<value>277, 22</value>
</data>
<data name="menuAddServers2.Text" xml:space="preserve">
<value>Import bulk URL from clipboard</value>
</data>
<data name="menuScanScreen2.Size" type="System.Drawing.Size, System.Drawing">
<value>277, 22</value>
</data>
<data name="menuScanScreen2.Text" xml:space="preserve">
<value>Scan QR code on the screen</value>
</data>
<data name="menuUpdateSubscriptions.Size" type="System.Drawing.Size, System.Drawing">
<value>277, 22</value>
</data>
<data name="menuUpdateSubscriptions.Text" xml:space="preserve">
<value>Update subscription without proxy</value>
</data>
<data name="menuUpdateSubViaProxy.Size" type="System.Drawing.Size, System.Drawing">
<value>277, 22</value>
</data>
<data name="menuUpdateSubViaProxy.Text" xml:space="preserve">
<value>Update subscriptions via proxy</value>
</data>
<data name="toolStripSeparator2.Size" type="System.Drawing.Size, System.Drawing">
<value>274, 6</value>
</data>
<data name="menuExit.Size" type="System.Drawing.Size, System.Drawing">
<value>277, 22</value>
</data>
<data name="menuExit.Text" xml:space="preserve">
<value>Exit</value>
</data>
<data name="panel1.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
<value>Top</value>
</data>
<data name="panel1.Location" type="System.Drawing.Point, System.Drawing">
<value>0, 56</value>
<value>0, 59</value>
</data>
<data name="panel1.Size" type="System.Drawing.Size, System.Drawing">
<value>952, 10</value>
<value>1269, 10</value>
</data>
<data name="panel1.TabIndex" type="System.Int32, mscorlib">
<value>2</value>
@@ -714,13 +717,43 @@
<value>315, 17</value>
</metadata>
<data name="toolStripSeparator4.Size" type="System.Drawing.Size, System.Drawing">
<value>6, 56</value>
<value>6, 59</value>
</data>
<data name="tsbSubSetting.Size" type="System.Drawing.Size, System.Drawing">
<value>395, 26</value>
</data>
<data name="tsbSubSetting.Text" xml:space="preserve">
<value>Settings</value>
</data>
<data name="tsbSubUpdate.Size" type="System.Drawing.Size, System.Drawing">
<value>395, 26</value>
</data>
<data name="tsbSubUpdate.Text" xml:space="preserve">
<value>Update subscription without proxy</value>
</data>
<data name="tsbSubUpdateViaProxy.Size" type="System.Drawing.Size, System.Drawing">
<value>395, 26</value>
</data>
<data name="tsbSubUpdateViaProxy.Text" xml:space="preserve">
<value>Update subscription with proxy</value>
</data>
<data name="tsbSubGroupUpdate.Size" type="System.Drawing.Size, System.Drawing">
<value>395, 26</value>
</data>
<data name="tsbSubGroupUpdate.Text" xml:space="preserve">
<value>Update group subscription without proxy</value>
</data>
<data name="tsbSubGroupUpdateViaProxy.Size" type="System.Drawing.Size, System.Drawing">
<value>395, 26</value>
</data>
<data name="tsbSubGroupUpdateViaProxy.Text" xml:space="preserve">
<value>Update group subscription with proxy</value>
</data>
<data name="tsbSub.ImageTransparentColor" type="System.Drawing.Color, System.Drawing">
<value>Magenta</value>
</data>
<data name="tsbSub.Size" type="System.Drawing.Size, System.Drawing">
<value>99, 53</value>
<value>122, 56</value>
</data>
<data name="tsbSub.Text" xml:space="preserve">
<value>Subscriptions</value>
@@ -732,7 +765,7 @@
<value>Magenta</value>
</data>
<data name="tsbQRCodeSwitch.Size" type="System.Drawing.Size, System.Drawing">
<value>45, 53</value>
<value>54, 56</value>
</data>
<data name="tsbQRCodeSwitch.Text" xml:space="preserve">
<value>Share</value>
@@ -744,43 +777,43 @@
<value>ImageAboveText</value>
</data>
<data name="toolStripSeparator8.Size" type="System.Drawing.Size, System.Drawing">
<value>6, 56</value>
<value>6, 59</value>
</data>
<data name="tsbOptionSetting.Size" type="System.Drawing.Size, System.Drawing">
<value>195, 22</value>
<value>245, 26</value>
</data>
<data name="tsbOptionSetting.Text" xml:space="preserve">
<value>OptionSetting</value>
</data>
<data name="tsbRoutingSetting.Size" type="System.Drawing.Size, System.Drawing">
<value>195, 22</value>
<value>245, 26</value>
</data>
<data name="tsbRoutingSetting.Text" xml:space="preserve">
<value>RoutingSetting</value>
</data>
<data name="tsbGlobalHotkeySetting.Size" type="System.Drawing.Size, System.Drawing">
<value>195, 22</value>
<value>245, 26</value>
</data>
<data name="tsbGlobalHotkeySetting.Text" xml:space="preserve">
<value>GlobalHotkeySetting</value>
</data>
<data name="tsbGroupSetting.Size" type="System.Drawing.Size, System.Drawing">
<value>195, 22</value>
<value>245, 26</value>
</data>
<data name="tsbGroupSetting.Text" xml:space="preserve">
<value>GroupSetting</value>
</data>
<data name="toolStripSeparator14.Size" type="System.Drawing.Size, System.Drawing">
<value>192, 6</value>
<value>242, 6</value>
</data>
<data name="tsbBackupGuiNConfig.Size" type="System.Drawing.Size, System.Drawing">
<value>195, 22</value>
<value>245, 26</value>
</data>
<data name="tsbBackupGuiNConfig.Text" xml:space="preserve">
<value>BackupGuiConfig</value>
</data>
<data name="tsbRestoreGuiNConfig.Size" type="System.Drawing.Size, System.Drawing">
<value>195, 22</value>
<value>245, 26</value>
</data>
<data name="tsbRestoreGuiNConfig.Text" xml:space="preserve">
<value>RestoreGuiNConfig</value>
@@ -789,7 +822,7 @@
<value>Magenta</value>
</data>
<data name="tsbSetting.Size" type="System.Drawing.Size, System.Drawing">
<value>67, 53</value>
<value>83, 56</value>
</data>
<data name="tsbSetting.Text" xml:space="preserve">
<value>Settings</value>
@@ -798,7 +831,7 @@
<value>ImageAboveText</value>
</data>
<data name="toolStripSeparator5.Size" type="System.Drawing.Size, System.Drawing">
<value>6, 56</value>
<value>6, 59</value>
</data>
<data name="tsbReload.ImageAlign" type="System.Drawing.ContentAlignment, System.Drawing">
<value>BottomCenter</value>
@@ -807,7 +840,7 @@
<value>Magenta</value>
</data>
<data name="tsbReload.Size" type="System.Drawing.Size, System.Drawing">
<value>97, 53</value>
<value>120, 56</value>
</data>
<data name="tsbReload.Text" xml:space="preserve">
<value>Restart service</value>
@@ -816,13 +849,61 @@
<value>ImageAboveText</value>
</data>
<data name="toolStripSeparator7.Size" type="System.Drawing.Size, System.Drawing">
<value>6, 56</value>
<value>6, 59</value>
</data>
<data name="tsbCheckUpdateN.Size" type="System.Drawing.Size, System.Drawing">
<value>269, 26</value>
</data>
<data name="tsbCheckUpdateN.Text" xml:space="preserve">
<value>v2rayN (this software)</value>
</data>
<data name="tsbCheckUpdateCore.Size" type="System.Drawing.Size, System.Drawing">
<value>269, 26</value>
</data>
<data name="tsbCheckUpdateCore.Text" xml:space="preserve">
<value>Update v2fly_v5 Core</value>
</data>
<data name="tsbCheckUpdateSagerNetCore.Size" type="System.Drawing.Size, System.Drawing">
<value>269, 26</value>
</data>
<data name="tsbCheckUpdateSagerNetCore.Text" xml:space="preserve">
<value>Update SagerNet Core</value>
</data>
<data name="tsbCheckUpdateXrayCore.Size" type="System.Drawing.Size, System.Drawing">
<value>269, 26</value>
</data>
<data name="tsbCheckUpdateXrayCore.Text" xml:space="preserve">
<value>Update Xray Core</value>
</data>
<data name="toolStripSeparator16.Size" type="System.Drawing.Size, System.Drawing">
<value>266, 6</value>
</data>
<data name="tsbCheckUpdateClashCore.Size" type="System.Drawing.Size, System.Drawing">
<value>269, 26</value>
</data>
<data name="tsbCheckUpdateClashCore.Text" xml:space="preserve">
<value>Update clash Core</value>
</data>
<data name="tsbCheckUpdateClashMetaCore.Size" type="System.Drawing.Size, System.Drawing">
<value>269, 26</value>
</data>
<data name="tsbCheckUpdateClashMetaCore.Text" xml:space="preserve">
<value>Update Clash.Meta Core</value>
</data>
<data name="toolStripSeparator15.Size" type="System.Drawing.Size, System.Drawing">
<value>266, 6</value>
</data>
<data name="tsbCheckUpdateGeo.Size" type="System.Drawing.Size, System.Drawing">
<value>269, 26</value>
</data>
<data name="tsbCheckUpdateGeo.Text" xml:space="preserve">
<value>Update Geo files</value>
</data>
<data name="tsbCheckUpdate.ImageTransparentColor" type="System.Drawing.Color, System.Drawing">
<value>Magenta</value>
</data>
<data name="tsbCheckUpdate.Size" type="System.Drawing.Size, System.Drawing">
<value>128, 53</value>
<value>155, 56</value>
</data>
<data name="tsbCheckUpdate.Text" xml:space="preserve">
<value>Check for updates</value>
@@ -831,13 +912,40 @@
<value>ImageAboveText</value>
</data>
<data name="toolStripSeparator10.Size" type="System.Drawing.Size, System.Drawing">
<value>6, 56</value>
<value>6, 59</value>
</data>
<data name="tsbAbout.Size" type="System.Drawing.Size, System.Drawing">
<value>230, 26</value>
</data>
<data name="tsbAbout.Text" xml:space="preserve">
<value>v2rayN Project</value>
</data>
<data name="tsbV2rayWebsite.Size" type="System.Drawing.Size, System.Drawing">
<value>230, 26</value>
</data>
<data name="tsbV2rayWebsite.Text" xml:space="preserve">
<value>V2Ray Website</value>
</data>
<data name="toolStripSeparator12.Size" type="System.Drawing.Size, System.Drawing">
<value>227, 6</value>
</data>
<data name="tsbLanguageDef.Size" type="System.Drawing.Size, System.Drawing">
<value>230, 26</value>
</data>
<data name="tsbLanguageDef.Text" xml:space="preserve">
<value>Language-[English]</value>
</data>
<data name="tsbLanguageZhHans.Size" type="System.Drawing.Size, System.Drawing">
<value>230, 26</value>
</data>
<data name="tsbLanguageZhHans.Text" xml:space="preserve">
<value>语言-[中文简体]</value>
</data>
<data name="tsbHelp.ImageTransparentColor" type="System.Drawing.Color, System.Drawing">
<value>Magenta</value>
</data>
<data name="tsbHelp.Size" type="System.Drawing.Size, System.Drawing">
<value>48, 53</value>
<value>58, 56</value>
</data>
<data name="tsbHelp.Text" xml:space="preserve">
<value>Help</value>
@@ -849,7 +957,7 @@
<value>Magenta</value>
</data>
<data name="tsbPromotion.Size" type="System.Drawing.Size, System.Drawing">
<value>89, 53</value>
<value>107, 56</value>
</data>
<data name="tsbPromotion.Text" xml:space="preserve">
<value> Promotion </value>
@@ -858,13 +966,13 @@
<value>ImageAboveText</value>
</data>
<data name="toolStripSeparator11.Size" type="System.Drawing.Size, System.Drawing">
<value>6, 56</value>
<value>6, 59</value>
</data>
<data name="tsbClose.ImageTransparentColor" type="System.Drawing.Color, System.Drawing">
<value>Magenta</value>
</data>
<data name="tsbClose.Size" type="System.Drawing.Size, System.Drawing">
<value>52, 53</value>
<value>61, 56</value>
</data>
<data name="tsbClose.Text" xml:space="preserve">
<value> Close </value>
@@ -876,7 +984,7 @@
<value>0, 0</value>
</data>
<data name="tsMain.Size" type="System.Drawing.Size, System.Drawing">
<value>952, 56</value>
<value>1269, 59</value>
</data>
<data name="tsMain.TabIndex" type="System.Int32, mscorlib">
<value>1</value>
@@ -893,111 +1001,6 @@
<data name="&gt;&gt;tsMain.ZOrder" xml:space="preserve">
<value>4</value>
</data>
<data name="tsbSubSetting.Size" type="System.Drawing.Size, System.Drawing">
<value>317, 22</value>
</data>
<data name="tsbSubSetting.Text" xml:space="preserve">
<value>Settings</value>
</data>
<data name="tsbSubUpdate.Size" type="System.Drawing.Size, System.Drawing">
<value>317, 22</value>
</data>
<data name="tsbSubUpdate.Text" xml:space="preserve">
<value>Update subscription without proxy</value>
</data>
<data name="tsbSubUpdateViaProxy.Size" type="System.Drawing.Size, System.Drawing">
<value>317, 22</value>
</data>
<data name="tsbSubUpdateViaProxy.Text" xml:space="preserve">
<value>Update subscription with proxy</value>
</data>
<data name="tsbSubGroupUpdate.Size" type="System.Drawing.Size, System.Drawing">
<value>317, 22</value>
</data>
<data name="tsbSubGroupUpdate.Text" xml:space="preserve">
<value>Update group subscription without proxy</value>
</data>
<data name="tsbSubGroupUpdateViaProxy.Size" type="System.Drawing.Size, System.Drawing">
<value>317, 22</value>
</data>
<data name="tsbSubGroupUpdateViaProxy.Text" xml:space="preserve">
<value>Update group subscription with proxy</value>
</data>
<data name="tsbCheckUpdateN.Size" type="System.Drawing.Size, System.Drawing">
<value>219, 22</value>
</data>
<data name="tsbCheckUpdateN.Text" xml:space="preserve">
<value>v2rayN (this software)</value>
</data>
<data name="tsbCheckUpdateCore.Size" type="System.Drawing.Size, System.Drawing">
<value>219, 22</value>
</data>
<data name="tsbCheckUpdateCore.Text" xml:space="preserve">
<value>Update v2fly Core</value>
</data>
<data name="tsbCheckUpdateSagerNetCore.Size" type="System.Drawing.Size, System.Drawing">
<value>219, 22</value>
</data>
<data name="tsbCheckUpdateSagerNetCore.Text" xml:space="preserve">
<value>Update SagerNet Core</value>
</data>
<data name="tsbCheckUpdateXrayCore.Size" type="System.Drawing.Size, System.Drawing">
<value>219, 22</value>
</data>
<data name="tsbCheckUpdateXrayCore.Text" xml:space="preserve">
<value>Update Xray Core</value>
</data>
<data name="toolStripSeparator16.Size" type="System.Drawing.Size, System.Drawing">
<value>216, 6</value>
</data>
<data name="tsbCheckUpdateClashCore.Size" type="System.Drawing.Size, System.Drawing">
<value>219, 22</value>
</data>
<data name="tsbCheckUpdateClashCore.Text" xml:space="preserve">
<value>Update clash Core</value>
</data>
<data name="tsbCheckUpdateClashMetaCore.Size" type="System.Drawing.Size, System.Drawing">
<value>219, 22</value>
</data>
<data name="tsbCheckUpdateClashMetaCore.Text" xml:space="preserve">
<value>Update Clash.Meta Core</value>
</data>
<data name="toolStripSeparator15.Size" type="System.Drawing.Size, System.Drawing">
<value>216, 6</value>
</data>
<data name="tsbCheckUpdateGeo.Size" type="System.Drawing.Size, System.Drawing">
<value>219, 22</value>
</data>
<data name="tsbCheckUpdateGeo.Text" xml:space="preserve">
<value>Update Geo files</value>
</data>
<data name="tsbAbout.Size" type="System.Drawing.Size, System.Drawing">
<value>187, 22</value>
</data>
<data name="tsbAbout.Text" xml:space="preserve">
<value>v2rayN Project</value>
</data>
<data name="tsbV2rayWebsite.Size" type="System.Drawing.Size, System.Drawing">
<value>187, 22</value>
</data>
<data name="tsbV2rayWebsite.Text" xml:space="preserve">
<value>V2Ray Website</value>
</data>
<data name="toolStripSeparator12.Size" type="System.Drawing.Size, System.Drawing">
<value>184, 6</value>
</data>
<data name="tsbLanguageDef.Size" type="System.Drawing.Size, System.Drawing">
<value>187, 22</value>
</data>
<data name="tsbLanguageDef.Text" xml:space="preserve">
<value>Language-[English]</value>
</data>
<data name="tsbLanguageZhHans.Size" type="System.Drawing.Size, System.Drawing">
<value>187, 22</value>
</data>
<data name="tsbLanguageZhHans.Text" xml:space="preserve">
<value>语言-[中文简体]</value>
</data>
<metadata name="$this.Localizable" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
@@ -1005,13 +1008,13 @@
<value>64</value>
</metadata>
<data name="$this.AutoScaleDimensions" type="System.Drawing.SizeF, System.Drawing">
<value>6, 12</value>
<value>8, 15</value>
</data>
<data name="$this.ClientSize" type="System.Drawing.Size, System.Drawing">
<value>952, 593</value>
<value>1269, 741</value>
</data>
<data name="$this.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>4, 4, 4, 4</value>
<value>5, 5, 5, 5</value>
</data>
<data name="$this.Text" xml:space="preserve">
<value>v2rayN</value>
@@ -1412,6 +1415,12 @@
<data name="&gt;&gt;tsbBackupGuiNConfig.Type" xml:space="preserve">
<value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;tsbRestoreGuiNConfig.Name" xml:space="preserve">
<value>tsbRestoreGuiNConfig</value>
</data>
<data name="&gt;&gt;tsbRestoreGuiNConfig.Type" xml:space="preserve">
<value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;toolStripSeparator5.Name" xml:space="preserve">
<value>toolStripSeparator5</value>
</data>
@@ -1550,16 +1559,10 @@
<data name="&gt;&gt;tsbClose.Type" xml:space="preserve">
<value>System.Windows.Forms.ToolStripButton, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;tsbRestoreGuiNConfig.Name" xml:space="preserve">
<value>tsbRestoreGuiNConfig</value>
</data>
<data name="&gt;&gt;tsbRestoreGuiNConfig.Type" xml:space="preserve">
<value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;$this.Name" xml:space="preserve">
<value>MainForm</value>
</data>
<data name="&gt;&gt;$this.Type" xml:space="preserve">
<value>v2rayN.Forms.BaseForm, v2rayN, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null</value>
<value>v2rayN.Forms.BaseForm, v2rayN, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null</value>
</data>
</root>

View File

@@ -505,7 +505,7 @@
<value>168, 22</value>
</data>
<data name="tsbCheckUpdateCore.Text" xml:space="preserve">
<value>v2fly-Core</value>
<value>v2fly_v5-Core</value>
</data>
<data name="tsbCheckUpdateXrayCore.Size" type="System.Drawing.Size, System.Drawing">
<value>168, 22</value>

View File

@@ -19,7 +19,9 @@ namespace v2rayN.Forms
private void OptionSettingForm_Load(object sender, EventArgs e)
{
cmbSystemProxyAdvancedProtocol.Items.AddRange(Global.IEProxyProtocols.ToArray());
cmbdomainStrategy4Freedom.Items.Clear();
cmbdomainStrategy4Freedom.Items.AddRange(Global.domainStrategy4Freedoms.ToArray());
InitBase();
InitKCP();
@@ -290,6 +292,10 @@ namespace v2rayN.Forms
bool lastEnableStatistics = config.enableStatistics;
config.enableStatistics = chkEnableStatistics.Checked;
config.statisticsFreshRate = Convert.ToInt32(numStatisticsFreshRate.Value);
if (config.statisticsFreshRate > 100 || config.statisticsFreshRate < 1)
{
config.statisticsFreshRate = 1;
}
config.keepOlderDedupl = chkKeepOlderDedupl.Checked;

View File

@@ -31,6 +31,8 @@
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(ServerTransportControl));
this.gbTransport = new System.Windows.Forms.GroupBox();
this.panTlsMore = new System.Windows.Forms.Panel();
this.labfingerprint = new System.Windows.Forms.Label();
this.cmbFingerprint = new System.Windows.Forms.ComboBox();
this.clbAlpn = new System.Windows.Forms.CheckedListBox();
this.label1 = new System.Windows.Forms.Label();
this.txtSNI = new System.Windows.Forms.TextBox();
@@ -57,6 +59,7 @@
//
// gbTransport
//
resources.ApplyResources(this.gbTransport, "gbTransport");
this.gbTransport.Controls.Add(this.panTlsMore);
this.gbTransport.Controls.Add(this.tipNetwork);
this.gbTransport.Controls.Add(this.txtPath);
@@ -72,25 +75,38 @@
this.gbTransport.Controls.Add(this.labHeaderType);
this.gbTransport.Controls.Add(this.labRequestHost);
this.gbTransport.Controls.Add(this.cmbHeaderType);
resources.ApplyResources(this.gbTransport, "gbTransport");
this.gbTransport.Name = "gbTransport";
this.gbTransport.TabStop = false;
//
// panTlsMore
//
resources.ApplyResources(this.panTlsMore, "panTlsMore");
this.panTlsMore.Controls.Add(this.labfingerprint);
this.panTlsMore.Controls.Add(this.cmbFingerprint);
this.panTlsMore.Controls.Add(this.clbAlpn);
this.panTlsMore.Controls.Add(this.label1);
this.panTlsMore.Controls.Add(this.txtSNI);
this.panTlsMore.Controls.Add(this.labSNI);
this.panTlsMore.Controls.Add(this.labAllowInsecure);
this.panTlsMore.Controls.Add(this.cmbAllowInsecure);
resources.ApplyResources(this.panTlsMore, "panTlsMore");
this.panTlsMore.Name = "panTlsMore";
//
// labfingerprint
//
resources.ApplyResources(this.labfingerprint, "labfingerprint");
this.labfingerprint.Name = "labfingerprint";
//
// cmbFingerprint
//
resources.ApplyResources(this.cmbFingerprint, "cmbFingerprint");
this.cmbFingerprint.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
this.cmbFingerprint.FormattingEnabled = true;
this.cmbFingerprint.Name = "cmbFingerprint";
//
// clbAlpn
//
this.clbAlpn.CheckOnClick = true;
resources.ApplyResources(this.clbAlpn, "clbAlpn");
this.clbAlpn.CheckOnClick = true;
this.clbAlpn.FormattingEnabled = true;
this.clbAlpn.Items.AddRange(new object[] {
resources.GetString("clbAlpn.Items"),
@@ -120,13 +136,13 @@
//
// cmbAllowInsecure
//
resources.ApplyResources(this.cmbAllowInsecure, "cmbAllowInsecure");
this.cmbAllowInsecure.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
this.cmbAllowInsecure.FormattingEnabled = true;
this.cmbAllowInsecure.Items.AddRange(new object[] {
resources.GetString("cmbAllowInsecure.Items"),
resources.GetString("cmbAllowInsecure.Items1"),
resources.GetString("cmbAllowInsecure.Items2")});
resources.ApplyResources(this.cmbAllowInsecure, "cmbAllowInsecure");
this.cmbAllowInsecure.Name = "cmbAllowInsecure";
//
// tipNetwork
@@ -141,9 +157,9 @@
//
// cmbNetwork
//
resources.ApplyResources(this.cmbNetwork, "cmbNetwork");
this.cmbNetwork.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
this.cmbNetwork.FormattingEnabled = true;
resources.ApplyResources(this.cmbNetwork, "cmbNetwork");
this.cmbNetwork.Name = "cmbNetwork";
this.cmbNetwork.SelectedIndexChanged += new System.EventHandler(this.cmbNetwork_SelectedIndexChanged);
//
@@ -174,9 +190,9 @@
//
// cmbStreamSecurity
//
resources.ApplyResources(this.cmbStreamSecurity, "cmbStreamSecurity");
this.cmbStreamSecurity.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
this.cmbStreamSecurity.FormattingEnabled = true;
resources.ApplyResources(this.cmbStreamSecurity, "cmbStreamSecurity");
this.cmbStreamSecurity.Name = "cmbStreamSecurity";
this.cmbStreamSecurity.SelectedIndexChanged += new System.EventHandler(this.cmbStreamSecurity_SelectedIndexChanged);
//
@@ -202,9 +218,9 @@
//
// cmbHeaderType
//
resources.ApplyResources(this.cmbHeaderType, "cmbHeaderType");
this.cmbHeaderType.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
this.cmbHeaderType.FormattingEnabled = true;
resources.ApplyResources(this.cmbHeaderType, "cmbHeaderType");
this.cmbHeaderType.Name = "cmbHeaderType";
//
// ServerTransportControl
@@ -246,5 +262,7 @@
private System.Windows.Forms.ComboBox cmbHeaderType;
private System.Windows.Forms.Label label1;
private System.Windows.Forms.CheckedListBox clbAlpn;
private System.Windows.Forms.Label labfingerprint;
private System.Windows.Forms.ComboBox cmbFingerprint;
}
}

View File

@@ -32,6 +32,7 @@ namespace v2rayN.Forms
{
cmbStreamSecurity.Items.Add(Global.StreamSecurityX);
}
cmbFingerprint.Items.AddRange(Global.fingerprints.ToArray());
}
public void BindingServer(VmessItem item)
@@ -45,6 +46,7 @@ namespace v2rayN.Forms
cmbStreamSecurity.Text = vmessItem.streamSecurity;
cmbAllowInsecure.Text = vmessItem.allowInsecure;
txtSNI.Text = vmessItem.sni;
cmbFingerprint.Text = vmessItem.fingerprint;
if (vmessItem.alpn != null)
{
@@ -68,7 +70,8 @@ namespace v2rayN.Forms
cmbStreamSecurity.Text = "";
cmbAllowInsecure.Text = "";
txtPath.Text = "";
txtSNI.Text = "";
txtSNI.Text = "";
cmbFingerprint.Text = "";
for (int i = 0; i < clbAlpn.Items.Count; i++)
{
clbAlpn.SetItemChecked(i, false);
@@ -84,6 +87,7 @@ namespace v2rayN.Forms
string streamSecurity = cmbStreamSecurity.Text;
string allowInsecure = cmbAllowInsecure.Text;
string sni = txtSNI.Text;
string fingerprint = cmbFingerprint.Text;
vmessItem.network = network;
vmessItem.headerType = headerType;
@@ -92,6 +96,7 @@ namespace v2rayN.Forms
vmessItem.streamSecurity = streamSecurity;
vmessItem.allowInsecure = allowInsecure;
vmessItem.sni = sni;
vmessItem.fingerprint = fingerprint;
var alpn = new List<string>();
for (int i = 0; i < clbAlpn.Items.Count; i++)

File diff suppressed because it is too large Load Diff

View File

@@ -119,49 +119,49 @@
</resheader>
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<data name="tipNetwork.Size" type="System.Drawing.Size, System.Drawing">
<value>143, 12</value>
<value>182, 15</value>
</data>
<data name="tipNetwork.Text" xml:space="preserve">
<value>*默认tcp,选错会无法连接</value>
</data>
<data name="cmbNetwork.Location" type="System.Drawing.Point, System.Drawing">
<value>127, 28</value>
<value>169, 36</value>
</data>
<data name="cmbNetwork.Size" type="System.Drawing.Size, System.Drawing">
<value>208, 20</value>
<value>290, 23</value>
</data>
<data name="labNetwork.Size" type="System.Drawing.Size, System.Drawing">
<value>107, 12</value>
<value>139, 15</value>
</data>
<data name="labNetwork.Text" xml:space="preserve">
<value>传输协议(network)</value>
</data>
<data name="labPath.Size" type="System.Drawing.Size, System.Drawing">
<value>65, 12</value>
<value>85, 15</value>
</data>
<data name="labPath.Text" xml:space="preserve">
<value>路径(path)</value>
</data>
<data name="labStreamSecurity.Size" type="System.Drawing.Size, System.Drawing">
<value>107, 12</value>
<value>122, 15</value>
</data>
<data name="labStreamSecurity.Text" xml:space="preserve">
<value>传输层安全(tls)</value>
</data>
<data name="txtRequestHost.Location" type="System.Drawing.Point, System.Drawing">
<value>127, 92</value>
<value>169, 117</value>
</data>
<data name="txtRequestHost.Size" type="System.Drawing.Size, System.Drawing">
<value>331, 20</value>
<value>442, 20</value>
</data>
<data name="labHeaderType.Size" type="System.Drawing.Size, System.Drawing">
<value>89, 12</value>
<value>115, 15</value>
</data>
<data name="labHeaderType.Text" xml:space="preserve">
<value>伪装类型(type)</value>
</data>
<data name="labRequestHost.Size" type="System.Drawing.Size, System.Drawing">
<value>89, 12</value>
<value>115, 15</value>
</data>
<data name="labRequestHost.Text" xml:space="preserve">
<value>伪装域名(host)</value>
@@ -169,25 +169,25 @@
<data name="gbTransport.Text" xml:space="preserve">
<value>底层传输方式(transport)</value>
</data>
<data name="label1.Location" type="System.Drawing.Point, System.Drawing">
<value>282, 11</value>
</data>
<data name="clbAlpn.Location" type="System.Drawing.Point, System.Drawing">
<value>331, 7</value>
<value>427, 9</value>
</data>
<data name="clbAlpn.Size" type="System.Drawing.Size, System.Drawing">
<value>160, 20</value>
<value>208, 24</value>
</data>
<data name="label1.Location" type="System.Drawing.Point, System.Drawing">
<value>378, 14</value>
</data>
<data name="txtSNI.Size" type="System.Drawing.Size, System.Drawing">
<value>391, 21</value>
<value>391, 25</value>
</data>
<data name="labAllowInsecure.Size" type="System.Drawing.Size, System.Drawing">
<value>167, 12</value>
<value>217, 15</value>
</data>
<data name="labAllowInsecure.Text" xml:space="preserve">
<value>跳过证书验证(allowInsecure)</value>
</data>
<data name="cmbAllowInsecure.Location" type="System.Drawing.Point, System.Drawing">
<value>183, 7</value>
<value>247, 10</value>
</data>
</root>

View File

@@ -20,6 +20,7 @@ namespace v2rayN
public const string hysteriaCoreUrl = "https://github.com/HyNetwork/hysteria/releases";
public const string naiveproxyCoreUrl = "https://github.com/klzgrad/naiveproxy/releases";
public const string tuicCoreUrl = "https://github.com/EAimTY/tuic/releases";
public const string singboxCoreUrl = "https://github.com/SagerNet/sing-box/releases";
public const string geoUrl = "https://github.com/Loyalsoldier/v2ray-rules-dat/releases/latest/download/{0}.dat";
@@ -210,11 +211,13 @@ namespace v2rayN
public static readonly List<string> ssSecuritys = new List<string> { "aes-256-gcm", "aes-128-gcm", "chacha20-poly1305", "chacha20-ietf-poly1305", "none", "plain" };
public static readonly List<string> ssSecuritysInSagerNet = new List<string> { "none", "2022-blake3-aes-128-gcm", "2022-blake3-aes-256-gcm", "2022-blake3-chacha20-poly1305", "aes-128-gcm", "aes-192-gcm", "aes-256-gcm", "chacha20-ietf-poly1305", "xchacha20-ietf-poly1305", "rc4", "rc4-md5", "aes-128-ctr", "aes-192-ctr", "aes-256-ctr", "aes-128-cfb", "aes-192-cfb", "aes-256-cfb", "aes-128-cfb8", "aes-192-cfb8", "aes-256-cfb8", "aes-128-ofb", "aes-192-ofb", "aes-256-ofb", "bf-cfb", "cast5-cfb", "des-cfb", "idea-cfb", "rc2-cfb", "seed-cfb", "camellia-128-cfb", "camellia-192-cfb", "camellia-256-cfb", "camellia-128-cfb8", "camellia-192-cfb8", "camellia-256-cfb8", "salsa20", "chacha20", "chacha20-ietf", "xchacha20" };
public static readonly List<string> ssSecuritysInXray = new List<string> { "aes-256-gcm", "aes-128-gcm", "chacha20-poly1305", "chacha20-ietf-poly1305", "xchacha20-poly1305", "xchacha20-ietf-poly1305", "none", "plain", "2022-blake3-aes-128-gcm", "2022-blake3-aes-256-gcm", "2022-blake3-chacha20-poly1305" };
public static readonly List<string> xtlsFlows = new List<string> { "", "xtls-rprx-origin", "xtls-rprx-origin-udp443", "xtls-rprx-direct", "xtls-rprx-direct-udp443" };
public static readonly List<string> xtlsFlows = new List<string> { "", "xtls-rprx-origin", "xtls-rprx-origin-udp443", "xtls-rprx-direct", "xtls-rprx-direct-udp443", "xtls-rprx-vision", "xtls-rprx-vision-udp443" };
public static readonly List<string> networks = new List<string> { "tcp", "kcp", "ws", "h2", "quic", "grpc" };
public static readonly List<string> kcpHeaderTypes = new List<string> { "srtp", "utp", "wechat-video", "dtls", "wireguard" };
public static readonly List<string> coreTypes = new List<string> { "v2fly", "SagerNet", "Xray" };
public static readonly List<string> coreTypes = new List<string> { "v2fly", "SagerNet", "Xray", "v2fly_v5" };
public static readonly List<string> domainMatchers = new List<string> { "linear", "mph", "" };
public static readonly List<string> fingerprints = new List<string> { "chrome", "firefox", "safari", "randomized", "" };
public static readonly List<string> domainStrategy4Freedoms = new List<string> { "AsIs", "UseIP", "UseIPv4", "UseIPv6", "" };
public const string GrpcgunMode = "gun";
public const string GrpcmultiMode = "multi";
public const string CheckMark = "√";

View File

@@ -156,7 +156,7 @@ namespace v2rayN.Handler
{
config.groupItem = new List<GroupItem>();
}
if (config.statisticsFreshRate > 100)
if (config.statisticsFreshRate > 100 || config.statisticsFreshRate < 1)
{
config.statisticsFreshRate = 1;
}

View File

@@ -31,7 +31,7 @@ namespace v2rayN.Handler
if (GetCoreType(vmessItem, EConfigType.Shadowsocks) == ECoreType.Xray)
{
return Global.ssSecuritysInXray;
}
}
return Global.ssSecuritysInSagerNet;
}
@@ -87,20 +87,36 @@ namespace v2rayN.Handler
coreDownloadUrl32 = Global.v2flyCoreUrl + "/download/{0}/v2ray-windows-{1}.zip",
coreDownloadUrl64 = Global.v2flyCoreUrl + "/download/{0}/v2ray-windows-{1}.zip",
match = "V2Ray",
versionArg = "-version"
versionArg = "-version",
redirectInfo = true,
});
coreInfos.Add(new CoreInfo
{
coreType = ECoreType.SagerNet,
coreExes = new List<string> { "v2ray" },
coreExes = new List<string> { "SagerNet", "v2ray" },
arguments = "run",
coreUrl = Global.SagerNetCoreUrl,
coreReleaseApiUrl = Global.SagerNetCoreUrl.Replace(@"https://github.com", @"https://api.github.com/repos"),
coreDownloadUrl32 = Global.SagerNetCoreUrl + "/download/{0}/v2ray-windows-{1}.zip",
coreDownloadUrl64 = Global.SagerNetCoreUrl + "/download/{0}/v2ray-windows-{1}.zip",
match = "V2Ray",
versionArg = "version"
versionArg = "version",
redirectInfo = true,
});
coreInfos.Add(new CoreInfo
{
coreType = ECoreType.v2fly_v5,
coreExes = new List<string> { "v2ray" },
arguments = "run",
coreUrl = Global.v2flyCoreUrl,
coreReleaseApiUrl = Global.v2flyCoreUrl.Replace(@"https://github.com", @"https://api.github.com/repos"),
coreDownloadUrl32 = Global.v2flyCoreUrl + "/download/{0}/v2ray-windows-{1}.zip",
coreDownloadUrl64 = Global.v2flyCoreUrl + "/download/{0}/v2ray-windows-{1}.zip",
match = "V2Ray",
versionArg = "version",
redirectInfo = true,
});
coreInfos.Add(new CoreInfo
@@ -113,7 +129,8 @@ namespace v2rayN.Handler
coreDownloadUrl32 = Global.xrayCoreUrl + "/download/{0}/Xray-windows-{1}.zip",
coreDownloadUrl64 = Global.xrayCoreUrl + "/download/{0}/Xray-windows-{1}.zip",
match = "Xray",
versionArg = "-version"
versionArg = "-version",
redirectInfo = true,
});
coreInfos.Add(new CoreInfo
@@ -126,7 +143,8 @@ namespace v2rayN.Handler
coreDownloadUrl32 = Global.clashCoreUrl + "/download/{0}/clash-windows-386-{0}.zip",
coreDownloadUrl64 = Global.clashCoreUrl + "/download/{0}/clash-windows-amd64-{0}.zip",
match = "v",
versionArg = "-v"
versionArg = "-v",
redirectInfo = true,
});
coreInfos.Add(new CoreInfo
@@ -139,7 +157,8 @@ namespace v2rayN.Handler
coreDownloadUrl32 = Global.clashMetaCoreUrl + "/download/{0}/Clash.Meta-windows-386-{0}.zip",
coreDownloadUrl64 = Global.clashMetaCoreUrl + "/download/{0}/Clash.Meta-windows-amd64-compatible-{0}.zip",
match = "v",
versionArg = "-v"
versionArg = "-v",
redirectInfo = true,
});
coreInfos.Add(new CoreInfo
@@ -151,6 +170,7 @@ namespace v2rayN.Handler
coreReleaseApiUrl = Global.hysteriaCoreUrl.Replace(@"https://github.com", @"https://api.github.com/repos"),
coreDownloadUrl32 = Global.hysteriaCoreUrl + "/download/{0}/hysteria-windows-386.exe",
coreDownloadUrl64 = Global.hysteriaCoreUrl + "/download/{0}/hysteria-windows-amd64.exe",
redirectInfo = true,
});
coreInfos.Add(new CoreInfo
@@ -158,7 +178,8 @@ namespace v2rayN.Handler
coreType = ECoreType.naiveproxy,
coreExes = new List<string> { "naiveproxy", "naive" },
arguments = "config.json",
coreUrl = Global.naiveproxyCoreUrl
coreUrl = Global.naiveproxyCoreUrl,
redirectInfo = false,
});
coreInfos.Add(new CoreInfo
@@ -166,7 +187,17 @@ namespace v2rayN.Handler
coreType = ECoreType.tuic,
coreExes = new List<string> { "tuic-client", "tuic" },
arguments = "-c config.json",
coreUrl = Global.tuicCoreUrl
coreUrl = Global.tuicCoreUrl,
redirectInfo = true,
});
coreInfos.Add(new CoreInfo
{
coreType = ECoreType.sing_box,
coreExes = new List<string> { "sing-box-client", "sing-box" },
arguments = "run",
coreUrl = Global.singboxCoreUrl,
redirectInfo = true,
});
}

View File

@@ -127,7 +127,8 @@ namespace v2rayN.Handler
}
}
}
Thread.Sleep(1000 * config_.statisticsFreshRate);
var sleep = config_.statisticsFreshRate < 1 ? 1 : config_.statisticsFreshRate;
Thread.Sleep(1000 * sleep);
channel_.ConnectAsync();
}
catch (Exception ex)

View File

@@ -383,6 +383,7 @@ namespace v2rayN.Handler
case ECoreType.v2fly:
case ECoreType.SagerNet:
case ECoreType.Xray:
case ECoreType.v2fly_v5:
version = Regex.Match(echo, $"{coreInfo.match} ([0-9.]+) \\(").Groups[1].Value;
break;
case ECoreType.clash:
@@ -423,6 +424,7 @@ namespace v2rayN.Handler
case ECoreType.v2fly:
case ECoreType.SagerNet:
case ECoreType.Xray:
case ECoreType.v2fly_v5:
{
curVersion = "v" + getCoreVersion(type);
message = string.Format(ResUI.IsLatestCore, curVersion);

View File

@@ -515,6 +515,16 @@ namespace v2rayN.Handler
outbound.mux.enabled = false;
outbound.mux.concurrency = -1;
}
else if (node.streamSecurity == Global.StreamSecurity)
{
if (!Utils.IsNullOrEmpty(node.flow))
{
usersItem.flow = node.flow;
outbound.mux.enabled = false;
outbound.mux.concurrency = -1;
}
}
outbound.protocol = Global.vlessProtocolLite;
outbound.settings.servers = null;
@@ -597,7 +607,8 @@ namespace v2rayN.Handler
TlsSettings tlsSettings = new TlsSettings
{
allowInsecure = Utils.ToBool(node.allowInsecure),
alpn = node.GetAlpn()
alpn = node.GetAlpn(),
fingerprint = node.fingerprint
};
if (!string.IsNullOrWhiteSpace(sni))
{
@@ -618,7 +629,8 @@ namespace v2rayN.Handler
TlsSettings xtlsSettings = new TlsSettings
{
allowInsecure = Utils.ToBool(node.allowInsecure),
alpn = node.GetAlpn()
alpn = node.GetAlpn(),
fingerprint = node.fingerprint
};
if (!string.IsNullOrWhiteSpace(sni))
{
@@ -951,6 +963,7 @@ namespace v2rayN.Handler
case ECoreType.v2fly:
case ECoreType.SagerNet:
case ECoreType.Xray:
case ECoreType.v2fly_v5:
break;
case ECoreType.clash:
case ECoreType.clash_meta:

View File

@@ -63,7 +63,7 @@ namespace v2rayN.Handler
}
//start a socks service
if (item.configType == EConfigType.Custom && item.preSocksPort > 0)
if (_process != null && !_process.HasExited && item.configType == EConfigType.Custom && item.preSocksPort > 0)
{
var itemSocks = new VmessItem()
{
@@ -212,29 +212,34 @@ namespace v2rayN.Handler
Arguments = coreInfo.arguments,
WorkingDirectory = Utils.StartupPath(),
UseShellExecute = false,
RedirectStandardOutput = true,
RedirectStandardError = true,
RedirectStandardOutput = coreInfo.redirectInfo,
RedirectStandardError = coreInfo.redirectInfo,
CreateNoWindow = true,
StandardOutputEncoding = Encoding.UTF8,
StandardErrorEncoding = Encoding.UTF8
StandardOutputEncoding = coreInfo.redirectInfo ? Encoding.UTF8 : null,
StandardErrorEncoding = coreInfo.redirectInfo ? Encoding.UTF8 : null,
}
};
p.OutputDataReceived += (sender, e) =>
if (coreInfo.redirectInfo)
{
if (!String.IsNullOrEmpty(e.Data))
p.OutputDataReceived += (sender, e) =>
{
string msg = e.Data + Environment.NewLine;
ShowMsg(false, msg);
}
};
if (!String.IsNullOrEmpty(e.Data))
{
string msg = e.Data + Environment.NewLine;
ShowMsg(false, msg);
}
};
}
p.Start();
p.PriorityClass = ProcessPriorityClass.High;
p.BeginOutputReadLine();
if (coreInfo.redirectInfo)
{
p.BeginOutputReadLine();
}
_process = p;
if (p.WaitForExit(1000))
{
throw new Exception(p.StandardError.ReadToEnd());
throw new Exception(coreInfo.redirectInfo ? p.StandardError.ReadToEnd() : "启动进程失败并退出 (Failed to start the process and exited)");
}
Global.processJob.AddProcess(p.Handle);

View File

@@ -133,11 +133,11 @@ namespace v2rayN.Mode
get; set;
}
public string systemProxyAdvancedProtocol { get; set; }
public int autoUpdateInterval { get; set; } = 0;
public int autoUpdateSubInterval { get; set; } = 0;
public bool checkPreReleaseUpdate { get; set; } = false;
public bool enableSecurityProtocolTls13
@@ -573,6 +573,8 @@ namespace v2rayN.Mode
{
get; set;
}
public string fingerprint { get; set; }
}
[Serializable]

View File

@@ -22,6 +22,8 @@ namespace v2rayN.Mode
public string match { get; set; }
public string versionArg { get; set; }
public bool redirectInfo { get; set; }
}
}

View File

@@ -6,11 +6,13 @@ namespace v2rayN.Mode
v2fly = 1,
Xray = 2,
SagerNet = 3,
v2fly_v5 = 4,
clash = 11,
clash_meta = 12,
hysteria = 21,
naiveproxy = 22,
tuic = 23,
sing_box = 24,
v2rayN = 99
}
}

View File

@@ -422,6 +422,12 @@ namespace v2rayN.Mode
{
get; set;
}
/// <summary>
/// "chrome" | "firefox" | "safari" | "randomized"
/// </summary>
public string fingerprint { get; set; }
}
public class TcpSettings

View File

@@ -5,7 +5,7 @@
<OutputType>WinExe</OutputType>
<UseWindowsForms>true</UseWindowsForms>
<Copyright>Copyright © 2019-2022 (GPLv3)</Copyright>
<FileVersion>5.34</FileVersion>
<FileVersion>5.39</FileVersion>
</PropertyGroup>
<PropertyGroup>
<ApplicationIcon>v2rayN.ico</ApplicationIcon>