From 28fb681e96f07a9d97e1d6e442dadb3f2950c170 Mon Sep 17 00:00:00 2001 From: cfg Date: Mon, 16 Oct 2017 20:48:12 +0800 Subject: [PATCH 1/2] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E8=AE=BE=E7=BD=AEwindows?= =?UTF-8?q?=E4=BB=A3=E7=90=86=E7=9A=84=E5=BC=80=E5=85=B3=EF=BC=8C=E9=BB=98?= =?UTF-8?q?=E8=AE=A4=E4=B8=8D=E8=87=AA=E5=8A=A8=E4=BF=AE=E6=94=B9=E4=BB=A3?= =?UTF-8?q?=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- V2RayW/App.config | 3 + V2RayW/ConfigForm.Designer.cs | 9 +++ V2RayW/ConfigForm.cs | 3 + V2RayW/ConfigForm.resx | 93 +++++++++++++++++--------- V2RayW/Program.cs | 63 +++++++++++------ V2RayW/Properties/AssemblyInfo.cs | 4 +- V2RayW/Properties/Settings.Designer.cs | 17 ++++- V2RayW/V2RayW.csproj | 4 +- 8 files changed, 137 insertions(+), 59 deletions(-) diff --git a/V2RayW/App.config b/V2RayW/App.config index e7c0b41..0b5e706 100644 --- a/V2RayW/App.config +++ b/V2RayW/App.config @@ -69,6 +69,9 @@ True + + False + { "enabled": false, diff --git a/V2RayW/ConfigForm.Designer.cs b/V2RayW/ConfigForm.Designer.cs index fd82c3a..2e59fb9 100644 --- a/V2RayW/ConfigForm.Designer.cs +++ b/V2RayW/ConfigForm.Designer.cs @@ -62,6 +62,7 @@ private void InitializeComponent() this.label2 = new System.Windows.Forms.Label(); this.comboBoxInP = new System.Windows.Forms.ComboBox(); this.checkBoxAlarm = new System.Windows.Forms.CheckBox(); + this.checkBoxSysProxy = new System.Windows.Forms.CheckBox(); this.groupBoxServer.SuspendLayout(); this.panel1.SuspendLayout(); this.SuspendLayout(); @@ -298,12 +299,19 @@ private void InitializeComponent() this.checkBoxAlarm.Name = "checkBoxAlarm"; this.checkBoxAlarm.UseVisualStyleBackColor = true; // + // checkBoxSysProxy + // + resources.ApplyResources(this.checkBoxSysProxy, "checkBoxSysProxy"); + this.checkBoxSysProxy.Name = "checkBoxSysProxy"; + this.checkBoxSysProxy.UseVisualStyleBackColor = true; + // // ConfigForm // this.AcceptButton = this.buttonSave; resources.ApplyResources(this, "$this"); this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; this.CancelButton = this.buttonCancel; + this.Controls.Add(this.checkBoxSysProxy); this.Controls.Add(this.checkBoxAlarm); this.Controls.Add(this.comboBoxInP); this.Controls.Add(this.label2); @@ -366,5 +374,6 @@ private void InitializeComponent() private System.Windows.Forms.ComboBox comboBoxSecurity; private System.Windows.Forms.Label label10; private System.Windows.Forms.CheckBox checkBoxAlarm; + private System.Windows.Forms.CheckBox checkBoxSysProxy; } } \ No newline at end of file diff --git a/V2RayW/ConfigForm.cs b/V2RayW/ConfigForm.cs index 51f7e9a..6a98b31 100644 --- a/V2RayW/ConfigForm.cs +++ b/V2RayW/ConfigForm.cs @@ -53,6 +53,7 @@ private void buttonSave_Click(object sender, EventArgs e) var profileArray = Program.profiles.Select(p => Program.profileToStr(p)); Properties.Settings.Default.profilesStr = String.Join("\t", profileArray); Properties.Settings.Default.alarmUnknown = checkBoxAlarm.Checked; + Properties.Settings.Default.autoSetSysProxy = checkBoxSysProxy.Checked; Properties.Settings.Default.Save(); Program.updateSystemProxy(); @@ -69,6 +70,7 @@ private void buttonTS_Click(object sender, EventArgs e) private void ConfigForm_Load(object sender, EventArgs e) { checkBoxAlarm.Checked = Properties.Settings.Default.alarmUnknown; + checkBoxSysProxy.Checked = Properties.Settings.Default.autoSetSysProxy; this.Icon = Properties.Resources.vw256; selectedServerIndex = Program.selectedServerIndex; profiles.Clear(); @@ -239,5 +241,6 @@ private void comboBoxSecurity_SelectedIndexChanged(object sender, EventArgs e) profiles[selectedServerIndex].security = comboBoxSecurity.SelectedIndex; } } + } } diff --git a/V2RayW/ConfigForm.resx b/V2RayW/ConfigForm.resx index c9af7db..60e06ed 100644 --- a/V2RayW/ConfigForm.resx +++ b/V2RayW/ConfigForm.resx @@ -123,7 +123,7 @@ - Microsoft YaHei, 9pt + Microsoft YaHei UI, 9pt 231, 21 @@ -147,10 +147,10 @@ $this - 13 + 14 - Microsoft YaHei, 9pt + Microsoft YaHei UI, 9pt @@ -184,13 +184,13 @@ $this - 12 + 13 True - Microsoft YaHei, 8pt + Microsoft YaHei UI, 8pt 14, 47 @@ -214,13 +214,13 @@ $this - 11 + 12 True - Microsoft YaHei, 9pt + Microsoft YaHei UI, 9pt 15, 88 @@ -244,13 +244,13 @@ $this - 10 + 11 True - Microsoft YaHei, 9pt + Microsoft YaHei UI, 9pt 17, 112 @@ -274,13 +274,13 @@ $this - 9 + 10 True - Microsoft YaHei, 9pt + Microsoft YaHei UI, 9pt 403, 394 @@ -307,13 +307,13 @@ $this - 8 + 9 True - Microsoft YaHei, 9pt + Microsoft YaHei UI, 9pt 477, 394 @@ -340,10 +340,10 @@ $this - 7 + 8 - Microsoft YaHei, 9pt + Microsoft YaHei UI, 9pt 272, 18 @@ -367,10 +367,10 @@ $this - 6 + 7 - Microsoft YaHei, 9pt + Microsoft YaHei UI, 9pt 65, 85 @@ -394,13 +394,13 @@ $this - 5 + 6 True - Microsoft YaHei, 9pt + Microsoft YaHei UI, 9pt 252, 394 @@ -427,7 +427,7 @@ $this - 4 + 5 buttonRemove @@ -478,7 +478,7 @@ 3 - Microsoft YaHei, 9pt + Microsoft YaHei UI, 9pt 13, 152 @@ -508,13 +508,13 @@ $this - 3 + 4 True - Microsoft YaHei, 9pt + Microsoft YaHei UI, 9pt NoControl @@ -550,7 +550,7 @@ True - Microsoft YaHei, 9pt + Microsoft YaHei UI, 9pt NoControl @@ -790,7 +790,7 @@ 14 - Microsoft YaHei, 9pt + Microsoft YaHei UI, 9pt 167, 28 @@ -913,7 +913,7 @@ 2 - Microsoft YaHei, 9pt + Microsoft YaHei UI, 9pt 80, 132 @@ -940,7 +940,7 @@ 3 - Microsoft YaHei, 9pt + Microsoft YaHei UI, 9pt 80, 68 @@ -967,7 +967,7 @@ 4 - Microsoft YaHei, 9pt + Microsoft YaHei UI, 9pt 80, 37 @@ -994,7 +994,7 @@ 5 - Microsoft YaHei, 9pt + Microsoft YaHei UI, 9pt 284, 6 @@ -1021,7 +1021,7 @@ 6 - Microsoft YaHei, 9pt + Microsoft YaHei UI, 9pt 80, 6 @@ -1288,7 +1288,7 @@ $this - 2 + 3 socks @@ -1315,7 +1315,7 @@ $this - 1 + 2 True @@ -1342,6 +1342,33 @@ $this + 1 + + + True + + + 260, 112 + + + 168, 21 + + + 17 + + + Auto set Windows Proxy + + + checkBoxSysProxy + + + System.Windows.Forms.CheckBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + $this + + 0 @@ -1354,7 +1381,7 @@ 557, 434 - Microsoft YaHei, 9pt + Microsoft YaHei UI, 9pt 3, 4, 3, 4 diff --git a/V2RayW/Program.cs b/V2RayW/Program.cs index 8b1565d..b94cb65 100644 --- a/V2RayW/Program.cs +++ b/V2RayW/Program.cs @@ -38,6 +38,15 @@ public static bool proxyIsOn Properties.Settings.Default.Save(); } } + public static bool setSysProxy + { + get { return Properties.Settings.Default.autoSetSysProxy; } + set + { + Properties.Settings.Default.autoSetSysProxy = value; + Properties.Settings.Default.Save(); + } + } public static int proxyMode { get { return Properties.Settings.Default.proxyMode % 3; } @@ -244,34 +253,44 @@ public static async void updateSystemProxy() public static int runSysproxy() { RegistryKey registry = Registry.CurrentUser.OpenSubKey("Software\\Microsoft\\Windows\\CurrentVersion\\Internet Settings", true); + if (setSysProxy) + { - bool settingsReturn, refreshReturn; + bool settingsReturn, refreshReturn; - registry.SetValue("ProxyEnable", proxyIsOn ? 1 : 0); - if (proxyIsOn) - { - registry.SetValue("ProxyServer", (Properties.Settings.Default.inProtocol == 0 ? "socks=" : "http://") + $"127.0.0.1:{Properties.Settings.Default.localPort}"); - registry.SetValue("ProxyOverride", ";localhost;127.*;10.*;172.16.*;172.17.*;172.18.*;172.19.*;172.20.*;172.21.*;172.22.*;172.23.*;172.24.*;172.25.*;172.26.*;172.27.*;172.28.*;172.29.*;172.30.*;172.31.*;172.32.*;192.168.*"); - } - var sysState = registry.GetValue("ProxyEnable").ToString() == (proxyIsOn ? "1" : "0"); - var sysServer = proxyIsOn ? registry.GetValue("ProxyServer").ToString() == (Properties.Settings.Default.inProtocol == 0 ? "socks=" : "http://") + $"127.0.0.1:{Properties.Settings.Default.localPort}" : true; - //MessageBox.Show(registry.GetValue("ProxyServer").ToString()); - var sysOverride = proxyIsOn ? registry.GetValue("ProxyOverride").ToString() == ";localhost;127.*;10.*;172.16.*;172.17.*;172.18.*;172.19.*;172.20.*;172.21.*;172.22.*;172.23.*;172.24.*;172.25.*;172.26.*;172.27.*;172.28.*;172.29.*;172.30.*;172.31.*;172.32.*;192.168.*" : true; - // They cause the OS to refresh the settings, causing IP to realy update - settingsReturn = InternetSetOption(IntPtr.Zero, INTERNET_OPTION_SETTINGS_CHANGED, IntPtr.Zero, 0); - refreshReturn = InternetSetOption(IntPtr.Zero, INTERNET_OPTION_REFRESH, IntPtr.Zero, 0); - if (sysServer && sysState && sysOverride) - { - if (settingsReturn && refreshReturn) + registry.SetValue("ProxyEnable", proxyIsOn ? 1 : 0); + if (proxyIsOn) { - return 0; - } else + registry.SetValue("ProxyServer", (Properties.Settings.Default.inProtocol == 0 ? "socks=" : "http://") + $"127.0.0.1:{Properties.Settings.Default.localPort}"); + registry.SetValue("ProxyOverride", ";localhost;127.*;10.*;172.16.*;172.17.*;172.18.*;172.19.*;172.20.*;172.21.*;172.22.*;172.23.*;172.24.*;172.25.*;172.26.*;172.27.*;172.28.*;172.29.*;172.30.*;172.31.*;172.32.*;192.168.*"); + } + var sysState = registry.GetValue("ProxyEnable").ToString() == (proxyIsOn ? "1" : "0"); + var sysServer = proxyIsOn ? registry.GetValue("ProxyServer").ToString() == (Properties.Settings.Default.inProtocol == 0 ? "socks=" : "http://") + $"127.0.0.1:{Properties.Settings.Default.localPort}" : true; + //MessageBox.Show(registry.GetValue("ProxyServer").ToString()); + var sysOverride = proxyIsOn ? registry.GetValue("ProxyOverride").ToString() == ";localhost;127.*;10.*;172.16.*;172.17.*;172.18.*;172.19.*;172.20.*;172.21.*;172.22.*;172.23.*;172.24.*;172.25.*;172.26.*;172.27.*;172.28.*;172.29.*;172.30.*;172.31.*;172.32.*;192.168.*" : true; + // They cause the OS to refresh the settings, causing IP to realy update + settingsReturn = InternetSetOption(IntPtr.Zero, INTERNET_OPTION_SETTINGS_CHANGED, IntPtr.Zero, 0); + refreshReturn = InternetSetOption(IntPtr.Zero, INTERNET_OPTION_REFRESH, IntPtr.Zero, 0); + if (sysServer && sysState && sysOverride) { - return 1; + if (settingsReturn && refreshReturn) + { + return 0; + } + else + { + return 1; + } } - } else + else + { + return 2; + } + } + else { - return 2; + registry.SetValue("ProxyEnable", 0); + return 0; } } diff --git a/V2RayW/Properties/AssemblyInfo.cs b/V2RayW/Properties/AssemblyInfo.cs index 55bb50e..8af81eb 100644 --- a/V2RayW/Properties/AssemblyInfo.cs +++ b/V2RayW/Properties/AssemblyInfo.cs @@ -33,7 +33,7 @@ // You can specify all the values or you can default the Build and Revision Numbers // by using the '*' as shown below: // [assembly: AssemblyVersion("1.0.*")] -[assembly: AssemblyVersion("0.0.6.0")] -[assembly: AssemblyFileVersion("0.0.6.0")] +[assembly: AssemblyVersion("0.0.8.1")] +[assembly: AssemblyFileVersion("0.0.8.1")] [assembly: NeutralResourcesLanguage("")] diff --git a/V2RayW/Properties/Settings.Designer.cs b/V2RayW/Properties/Settings.Designer.cs index da4c4de..d9e0cf3 100644 --- a/V2RayW/Properties/Settings.Designer.cs +++ b/V2RayW/Properties/Settings.Designer.cs @@ -173,7 +173,22 @@ public bool alarmUnknown { this["alarmUnknown"] = value; } } - + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool autoSetSysProxy + { + get + { + return ((bool)(this["autoSetSysProxy"])); + } + set + { + this["autoSetSysProxy"] = value; + } + } + [global::System.Configuration.UserScopedSettingAttribute()] [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.Configuration.DefaultSettingValueAttribute("{\r\n \"enabled\": false,\r\n \"concurrency\": 8\r\n}")] diff --git a/V2RayW/V2RayW.csproj b/V2RayW/V2RayW.csproj index 5e85475..0170c39 100644 --- a/V2RayW/V2RayW.csproj +++ b/V2RayW/V2RayW.csproj @@ -66,8 +66,10 @@ true - true + false + + ..\packages\Newtonsoft.Json.9.0.1\lib\net45\Newtonsoft.Json.dll From ca61743998eebfd5fc9b8ae132fc5f806c836665 Mon Sep 17 00:00:00 2001 From: cfg Date: Thu, 18 Jan 2018 16:38:44 +0800 Subject: [PATCH 2/2] =?UTF-8?q?=E6=89=8B=E5=B7=A5=E4=BF=AE=E6=94=B9?= =?UTF-8?q?=E7=9A=84autoSetSysProxy=EF=BC=8C=E8=B0=83=E6=95=B4=E4=B8=BAIDE?= =?UTF-8?q?=E8=87=AA=E5=8A=A8=E7=94=9F=E6=88=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- V2RayW/App.config | 6 ++--- V2RayW/Program.cs | 2 +- V2RayW/Properties/Settings.Designer.cs | 37 ++++++++++++-------------- V2RayW/Properties/Settings.settings | 3 +++ 4 files changed, 24 insertions(+), 24 deletions(-) diff --git a/V2RayW/App.config b/V2RayW/App.config index 0b5e706..84c6d3f 100644 --- a/V2RayW/App.config +++ b/V2RayW/App.config @@ -69,15 +69,15 @@ True - - False - { "enabled": false, "concurrency": 8 } + + False + diff --git a/V2RayW/Program.cs b/V2RayW/Program.cs index b94cb65..2ca0d12 100644 --- a/V2RayW/Program.cs +++ b/V2RayW/Program.cs @@ -486,7 +486,7 @@ public class Profile { internal string address = "1.2.3.4"; internal bool allowPassive = false; - internal int alterId = 0; + internal int alterId = 64; internal int network = 0; internal int port = 10086; internal string remark = ""; diff --git a/V2RayW/Properties/Settings.Designer.cs b/V2RayW/Properties/Settings.Designer.cs index d9e0cf3..2ba27a1 100644 --- a/V2RayW/Properties/Settings.Designer.cs +++ b/V2RayW/Properties/Settings.Designer.cs @@ -1,10 +1,10 @@ //------------------------------------------------------------------------------ // -// This code was generated by a tool. -// Runtime Version:4.0.30319.42000 +// 此代码由工具生成。 +// 运行时版本:4.0.30319.42000 // -// Changes to this file may cause incorrect behavior and will be lost if -// the code is regenerated. +// 对此文件的更改可能会导致不正确的行为,并且如果 +// 重新生成代码,这些更改将会丢失。 // //------------------------------------------------------------------------------ @@ -12,7 +12,7 @@ namespace V2RayW.Properties { [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] - [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "15.3.0.0")] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "15.5.0.0")] internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase { private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings()))); @@ -173,31 +173,28 @@ public bool alarmUnknown { this["alarmUnknown"] = value; } } - + [global::System.Configuration.UserScopedSettingAttribute()] [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("False")] - public bool autoSetSysProxy - { - get - { - return ((bool)(this["autoSetSysProxy"])); + [global::System.Configuration.DefaultSettingValueAttribute("{\r\n \"enabled\": false,\r\n \"concurrency\": 8\r\n}")] + public string mux { + get { + return ((string)(this["mux"])); } - set - { - this["autoSetSysProxy"] = value; + set { + this["mux"] = value; } } - + [global::System.Configuration.UserScopedSettingAttribute()] [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] - [global::System.Configuration.DefaultSettingValueAttribute("{\r\n \"enabled\": false,\r\n \"concurrency\": 8\r\n}")] - public string mux { + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool autoSetSysProxy { get { - return ((string)(this["mux"])); + return ((bool)(this["autoSetSysProxy"])); } set { - this["mux"] = value; + this["autoSetSysProxy"] = value; } } } diff --git a/V2RayW/Properties/Settings.settings b/V2RayW/Properties/Settings.settings index 60f63bf..4f688d9 100644 --- a/V2RayW/Properties/Settings.settings +++ b/V2RayW/Properties/Settings.settings @@ -67,5 +67,8 @@ "concurrency": 8 } + + False + \ No newline at end of file