diff --git a/v2rayN/v2rayN/Forms/MainForm.cs b/v2rayN/v2rayN/Forms/MainForm.cs index cabc221d53e..d6fdd9837b1 100644 --- a/v2rayN/v2rayN/Forms/MainForm.cs +++ b/v2rayN/v2rayN/Forms/MainForm.cs @@ -33,7 +33,7 @@ public MainForm() Application.ApplicationExit += (sender, args) => { - MyAppExit(); + MyAppExit(false); }; } @@ -88,8 +88,10 @@ private void MainForm_FormClosing(object sender, FormClosingEventArgs e) case CloseReason.ApplicationExitCall: case CloseReason.FormOwnerClosing: case CloseReason.TaskManagerClosing: + MyAppExit(false); + break; case CloseReason.WindowsShutDown: - MyAppExit(); + MyAppExit(true); break; } } @@ -105,14 +107,21 @@ private void MainForm_Resize(object sender, EventArgs e) //} } - private void MyAppExit() + private void MyAppExit(bool blWindowsShutDown) { try { v2rayHandler.V2rayStop(); //HttpProxyHandle.CloseHttpAgent(config); - HttpProxyHandle.UpdateSysProxy(config, true); + if (blWindowsShutDown) + { + HttpProxyHandle.ResetIEProxy4WindowsShutDown(); + } + else + { + HttpProxyHandle.UpdateSysProxy(config, true); + } ConfigHandler.SaveConfig(ref config); statistics?.SaveToFile(); diff --git a/v2rayN/v2rayN/HttpProxyHandler/HttpProxyHandle.cs b/v2rayN/v2rayN/HttpProxyHandler/HttpProxyHandle.cs index e6a02a49abf..890352dc460 100644 --- a/v2rayN/v2rayN/HttpProxyHandler/HttpProxyHandle.cs +++ b/v2rayN/v2rayN/HttpProxyHandler/HttpProxyHandle.cs @@ -170,8 +170,6 @@ public static bool UpdateSysProxy(Config config, bool forceDisable) } else if (type == ESysProxyType.ForcedClear) { - //TODO To be verified - Utils.RegWriteValue(@"Software\Microsoft\Windows\CurrentVersion\Internet Settings", "ProxyEnable", 0); SysProxyHandle.ResetIEProxy(); } else if (type == ESysProxyType.Unchanged) @@ -184,5 +182,17 @@ public static bool UpdateSysProxy(Config config, bool forceDisable) } return true; } + + public static void ResetIEProxy4WindowsShutDown() + { + try + { + //TODO To be verified + Utils.RegWriteValue(@"Software\Microsoft\Windows\CurrentVersion\Internet Settings", "ProxyEnable", 0); + } + catch + { + } + } } } diff --git a/v2rayN/v2rayN/Properties/AssemblyInfo.cs b/v2rayN/v2rayN/Properties/AssemblyInfo.cs index d4384b659db..0807f7b5758 100644 --- a/v2rayN/v2rayN/Properties/AssemblyInfo.cs +++ b/v2rayN/v2rayN/Properties/AssemblyInfo.cs @@ -32,4 +32,4 @@ // 方法是按如下所示使用“*”: //[assembly: AssemblyVersion("1.0.*")] //[assembly: AssemblyVersion("1.0.0")] -[assembly: AssemblyFileVersion("4.16")] +[assembly: AssemblyFileVersion("4.17")]