예제 #1
0
파일: Program.cs 프로젝트: dabrewdanya/VRCX
        public static void Main()
        {
            try
            {
                var settings = new CefSettings
                {
                    CachePath = "cache",
                    PersistUserPreferences     = true,
                    PersistSessionCookies      = true,
                    WindowlessRenderingEnabled = true
                };
                settings.CefCommandLineArgs.Add("ignore-certificate-errors", "1");
                settings.CefCommandLineArgs.Add("disable-web-security", "1");
                // settings.CefCommandLineArgs.Add("no-proxy-server", "1");
                settings.CefCommandLineArgs.Add("disable-plugins-discovery", "1");
                settings.CefCommandLineArgs.Add("disable-extensions", "1");
                settings.CefCommandLineArgs.Add("disable-pdf-extension", "1");
                settings.CefCommandLineArgs.Add("disable-gpu", "1");
                settings.CefCommandLineArgs.Add("disable-gpu-vsync", "1");
                // settings.CefCommandLineArgs.Add("disable-direct-write", "1");
                settings.LogSeverity = LogSeverity.Disable;
                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);
            }
        }
예제 #2
0
파일: CpuMonitor.cs 프로젝트: VRCMG/VRCX
 static CpuMonitor()
 {
     Instance = new CpuMonitor();
 }