diff --git a/Wins/MainWin.xaml.cs b/Wins/MainWin.xaml.cs index b89bcf6..ca298f2 100644 --- a/Wins/MainWin.xaml.cs +++ b/Wins/MainWin.xaml.cs @@ -7,6 +7,7 @@ using System.Net.Sockets; using System.Security.Cryptography; using System.Security.Cryptography.X509Certificates; +using System.Text; using System.Text.Json; using System.Threading.Tasks; using System.Windows; @@ -371,16 +372,17 @@ private void EditConfButton_Click(object sender, RoutedEventArgs e) } private async void UpdateUpstreamHostButton_Click(object sender, RoutedEventArgs e) { - string upstreamUpstreamHostUrl = (MainPres!.UpstreamUrl.StartsWith("http://") || MainPres.UpstreamUrl.StartsWith("https://") ? string.Empty : "https://") + MainPres.UpstreamUrl; - string upstreamUpstreamHostString = await Http.GetAsync(upstreamUpstreamHostUrl, MainClient); - string localUpstreamHostString; - if (!File.Exists(MainConst.UpstreamHostPath)) File.Create(MainConst.UpstreamHostPath).Dispose(); - localUpstreamHostString = File.ReadAllText(MainConst.UpstreamHostPath); + string upstreamUpstreamHostUrl = (MainPres!.UpstreamUrl.StartsWith("http://") || MainPres.UpstreamUrl.StartsWith("https://") ? string.Empty : "https://") + MainPres.UpstreamUrl; + string upstreamUpstreamHostString = await Http.GetAsync(upstreamUpstreamHostUrl, MainClient); + string localUpstreamHostString = File.ReadAllText(MainConst.UpstreamHostPath); + + try { upstreamUpstreamHostString = Encoding.UTF8.GetString(Convert.FromBase64String(upstreamUpstreamHostString)); } + catch { } - if (localUpstreamHostString.Replace("\r", string.Empty) == upstreamUpstreamHostString) + if (localUpstreamHostString == upstreamUpstreamHostString || localUpstreamHostString.Replace("\r", string.Empty) == upstreamUpstreamHostString) MessageBox.Show(MainConst._UpstreamHostUtdMsg); else {