diff --git a/shadowsocks-csharp/Program.cs b/shadowsocks-csharp/Program.cs
index 3054d4b2..d500bb2e 100755
--- a/shadowsocks-csharp/Program.cs
+++ b/shadowsocks-csharp/Program.cs
@@ -19,6 +19,10 @@ namespace Shadowsocks
public static ShadowsocksController MainController { get; private set; }
public static MenuViewController MenuController { get; private set; }
public static string[] Args { get; private set; }
+
+ [System.Runtime.InteropServices.DllImport("user32.dll")]
+ private static extern bool SetProcessDPIAware();
+
///
/// 应用程序的主入口点。
///
@@ -42,19 +46,22 @@ namespace Shadowsocks
"Shadowsocks Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
return;
}
-
- //// Check .NET Framework version
- //if (!Utils.IsSupportedRuntimeVersion())
- //{
- // if (DialogResult.OK == MessageBox.Show(I18N.GetString("Unsupported .NET Framework, please update to {0} or later.", "4.7.2"),
- // "Shadowsocks Error", MessageBoxButtons.OKCancel, MessageBoxIcon.Error))
- // {
- // //Process.Start("https://www.microsoft.com/download/details.aspx?id=53344"); // 4.6.2
- // Process.Start("https://dotnet.microsoft.com/download/dotnet-framework/net472");
- // }
- // return;
- //}
-
+#if NET472
+ // Check .NET Framework version
+ if (!Utils.IsSupportedRuntimeVersion())
+ {
+ if (DialogResult.OK == MessageBox.Show(I18N.GetString("Unsupported .NET Framework, please update to {0} or later.", "4.7.2"),
+ "Shadowsocks Error", MessageBoxButtons.OKCancel, MessageBoxIcon.Error))
+ {
+ //Process.Start("https://www.microsoft.com/download/details.aspx?id=53344"); // 4.6.2
+ Process.Start("https://dotnet.microsoft.com/download/dotnet-framework/net472");
+ }
+ return;
+ }
+ if (Environment.OSVersion.Version.Major >= 6) SetProcessDPIAware();
+#else
+ Application.SetHighDpiMode(HighDpiMode.SystemAware);
+#endif
Utils.ReleaseMemory(true);
using (Mutex mutex = new Mutex(false, $"Global\\Shadowsocks_{Application.StartupPath.GetHashCode()}"))
{
@@ -67,7 +74,7 @@ namespace Shadowsocks
SystemEvents.PowerModeChanged += SystemEvents_PowerModeChanged;
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
- Application.SetHighDpiMode(HighDpiMode.SystemAware);
+
AutoStartup.RegisterForRestart(true);
if (!mutex.WaitOne(0, false))
diff --git a/shadowsocks-csharp/shadowsocks-csharp.csproj b/shadowsocks-csharp/shadowsocks-csharp.csproj
index ca9497d5..552acbd3 100644
--- a/shadowsocks-csharp/shadowsocks-csharp.csproj
+++ b/shadowsocks-csharp/shadowsocks-csharp.csproj
@@ -2,7 +2,7 @@
WinExe
- netcoreapp3.1
+ netcoreapp3.1;net472
Shadowsocks
true
clowwindy & community 2020
@@ -48,7 +48,19 @@
Never
-
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -56,7 +68,7 @@
all
runtime; build; native; contentfiles; analyzers; buildtransitive
-
+
@@ -66,7 +78,7 @@
-
+
diff --git a/shadowsocks-windows.sln b/shadowsocks-windows.sln
index 85749908..bdeb5df1 100644
--- a/shadowsocks-windows.sln
+++ b/shadowsocks-windows.sln
@@ -5,7 +5,7 @@ VisualStudioVersion = 16.0.29709.97
MinimumVisualStudioVersion = 10.0.40219.1
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "shadowsocks-csharp", "shadowsocks-csharp\shadowsocks-csharp.csproj", "{8C02D2F7-7CDB-4D55-9F25-CD03EF4AA062}"
EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ShadowsocksTest", "test\ShadowsocksTest.csproj", "{45913187-0685-4903-B250-DCEF0479CD86}"
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "ShadowsocksTest", "test\ShadowsocksTest.csproj", "{45913187-0685-4903-B250-DCEF0479CD86}"
ProjectSection(ProjectDependencies) = postProject
{8C02D2F7-7CDB-4D55-9F25-CD03EF4AA062} = {8C02D2F7-7CDB-4D55-9F25-CD03EF4AA062}
EndProjectSection