47 lines
1.4 KiB
C#
47 lines
1.4 KiB
C#
using Pulsar.Client.Config;
|
|
using Pulsar.Client.IO;
|
|
using System;
|
|
using System.Diagnostics;
|
|
using System.Net;
|
|
using System.Runtime.InteropServices;
|
|
using System.Threading;
|
|
using System.Windows.Forms;
|
|
|
|
namespace Pulsar.Client
|
|
{
|
|
internal static class Program
|
|
{
|
|
[DllImport("user32.dll", SetLastError = true)]
|
|
private static extern IntPtr GetThreadDesktop(uint dwThreadId);
|
|
|
|
[DllImport("kernel32.dll")]
|
|
private static extern uint GetCurrentThreadId();
|
|
|
|
[DllImport("user32.dll", SetLastError = true)]
|
|
private static extern bool SetProcessDPIAware();
|
|
|
|
[STAThread]
|
|
private static void Main()
|
|
{
|
|
// enable TLS 1.2
|
|
ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12;
|
|
|
|
SetProcessDPIAware();
|
|
|
|
// Set the unhandled exception mode to force all Windows Forms errors to go through our handler
|
|
Application.SetUnhandledExceptionMode(UnhandledExceptionMode.CatchException);
|
|
|
|
Application.EnableVisualStyles();
|
|
Application.SetCompatibleTextRenderingDefault(false);
|
|
|
|
SaveOriginalDesktop();
|
|
|
|
Application.Run(new PulsarApplication());
|
|
}
|
|
|
|
private static void SaveOriginalDesktop()
|
|
{
|
|
Settings.OriginalDesktopPointer = GetThreadDesktop(GetCurrentThreadId());
|
|
}
|
|
}
|
|
} |