Compare commits

...

16 Commits
5.36 ... 5.38

Author SHA1 Message Date
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
19 changed files with 1399 additions and 768 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

@@ -1268,6 +1268,7 @@ namespace v2rayN.Forms
AppendText(false, msg);
if (success)
{
RefreshServers();
Global.reloadV2ray = true;
await LoadV2ray();
}

View File

@@ -19,6 +19,8 @@ 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();

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)
{
@@ -69,6 +71,7 @@ namespace v2rayN.Forms
cmbAllowInsecure.Text = "";
txtPath.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

@@ -211,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" , "v2fly_v5" };
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

@@ -87,7 +87,8 @@ 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
@@ -100,7 +101,8 @@ namespace v2rayN.Handler
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
@@ -113,7 +115,8 @@ 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
@@ -126,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
@@ -139,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
@@ -152,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
@@ -164,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
@@ -171,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
@@ -179,7 +187,8 @@ 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
@@ -187,7 +196,8 @@ namespace v2rayN.Handler
coreType = ECoreType.sing_box,
coreExes = new List<string> { "sing-box-client", "sing-box" },
arguments = "run",
coreUrl = Global.singboxCoreUrl
coreUrl = Global.singboxCoreUrl,
redirectInfo = true,
});
}

View File

@@ -458,7 +458,7 @@ namespace v2rayN.Handler
throw new ArgumentException("Type");
}
if (curVersion == version)
if (string.Compare(curVersion, version, true) >= 0)
{
AbsoluteCompleted?.Invoke(this, new ResultEventArgs(false, message));
return;

View File

@@ -597,7 +597,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 +619,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))
{

View File

@@ -212,13 +212,15 @@ 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,
}
};
if (coreInfo.redirectInfo)
{
p.OutputDataReceived += (sender, e) =>
{
if (!String.IsNullOrEmpty(e.Data))
@@ -227,9 +229,12 @@ namespace v2rayN.Handler
ShowMsg(false, msg);
}
};
}
p.Start();
p.PriorityClass = ProcessPriorityClass.High;
if (coreInfo.redirectInfo)
{
p.BeginOutputReadLine();
}
_process = p;
if (p.WaitForExit(1000))

View File

@@ -573,6 +573,8 @@ namespace v2rayN.Mode
{
get; set;
}
public string fingerprint { get; set; }
}
[Serializable]

View File

@@ -23,5 +23,7 @@ namespace v2rayN.Mode
public string match { get; set; }
public string versionArg { get; set; }
public bool redirectInfo { get; set; }
}
}

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.36</FileVersion>
<FileVersion>5.38</FileVersion>
</PropertyGroup>
<PropertyGroup>
<ApplicationIcon>v2rayN.ico</ApplicationIcon>