Beispiel #1
0
 static Discord()
 {
     Instance = new Discord();
 }
Beispiel #2
0
        public static void Main()
        {
            try
            {
                var settings = new CefSettings
                {
                    CachePath = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "cache"),
                    IgnoreCertificateErrors    = true,
                    LogSeverity                = LogSeverity.Disable,
                    PersistUserPreferences     = true,
                    WindowlessRenderingEnabled = true,
                    PersistSessionCookies      = true
                };
                settings.CefCommandLineArgs.Add("ignore-certificate-errors");
                // settings.CefCommandLineArgs.Add("no-proxy-server");
                // settings.CefCommandLineArgs.Add("disable-web-security");
                settings.CefCommandLineArgs.Add("allow-universal-access-from-files");
                settings.CefCommandLineArgs.Add("disable-extensions");
                settings.CefCommandLineArgs.Add("disable-plugins");
                settings.CefCommandLineArgs.Add("disable-pdf-extension");
                settings.CefCommandLineArgs.Add("disable-spell-checking");
                settings.CefCommandLineArgs.Add("disable-gpu");
                settings.CefCommandLineArgs.Add("disable-gpu-vsync");
                settings.DisableGpuAcceleration();

                /*settings.RegisterScheme(new CefCustomScheme
                 * {
                 *  SchemeName = "vrcx",
                 *  DomainName = "app",
                 *  SchemeHandlerFactory = new FolderSchemeHandlerFactory(Application.StartupPath + "/../../../html")
                 * });*/

                // MUST TURN ON (Error when creating a browser on certain systems.)
                CefSharpSettings.WcfEnabled     = true;
                CefSharpSettings.ShutdownOnExit = false;
                CefSharpSettings.SubprocessExitIfParentProcessClosed = true;

                Cef.EnableHighDPISupport();

                if (Cef.Initialize(settings, true, browserProcessHandler: null))
                {
                    Application.EnableVisualStyles();
                    Application.SetCompatibleTextRenderingDefault(false);
                    VRCXStorage.Load();
                    SQLite.Init();
                    CpuMonitor.Init();
                    Discord.Init();
                    LogWatcher.Init();
                    VRCXVR.Init();
                    Application.Run(new MainForm());
                    VRCXVR.Exit();
                    LogWatcher.Exit();
                    Discord.Exit();
                    CpuMonitor.Exit();
                    SQLite.Exit();
                    VRCXStorage.Save();
                    Cef.Shutdown();
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show($"{ex.Message}\n{ex.StackTrace}", "PLEASE REPORT TO PYPY", MessageBoxButtons.OK, MessageBoxIcon.Error);
                Environment.Exit(0);
            }
        }