Exemplo n.º 1
0
 public static void UIMain(string[] args)
 {
     ProcessUtils.LogParentProcessDetails();
     TimelineStatsSender.Init(MultiInstanceStrings.VmName);
     TimelineStatsSender.HandleEngineBootEvent(EngineStatsEvent.player_launched.ToString());
     Program.BstPlusDevicesInit();
     Opt.Instance.Parse(args);
     if (Opt.Instance.help)
     {
         Program.Usage();
     }
     Stats.SendFrontendStatusUpdate("frontend-launched", MultiInstanceStrings.VmName);
     if (!MultiInstanceUtils.VerifyVmId(MultiInstanceStrings.VmName))
     {
         Logger.Error("VmName {0} , not part of VmList {1} , Exiting Process", (object)MultiInstanceStrings.VmName, (object)RegistryManager.Instance.VmList.ToString());
         Environment.Exit(1);
     }
     Logger.InitVmInstanceName(MultiInstanceStrings.VmName);
     InputManagerProxy.SetUp();
     if (HyperV.Instance.HyperVStatus == HyperV.ReturnCodes.MicrosoftHyperV)
     {
         Logger.Error("Hyper-V enabled for non Hyper-V build, exiting");
         Environment.Exit(-5);
     }
     else
     {
         if (HyperV.Instance.HyperVStatus != HyperV.ReturnCodes.None)
         {
             Logger.Info("Non-microsoft Hyper-V may be active, continuing");
         }
         Program.SetupAndRunApplication(Opt.Instance);
     }
 }
Exemplo n.º 2
0
        private static void SetupAndRunApplication(Opt opt)
        {
            Program.CheckIfAlreadyRunning(Opt.Instance.h);
            Application.EnableVisualStyles();
            Application.SetCompatibleTextRenderingDefault(false);
            if (!VMWindow.CheckAndroidFilesIntegrity())
            {
                Logger.Error("Android File Integrity check failed");
                Environment.Exit(-2);
            }
            TimelineStatsSender.HandleEngineBootEvent(EngineStatsEvent.android_file_integrity_passed.ToString());
            InputMapper.RegisterGuestBootLogsHandler();
            AndroidService.StartAsync();
            HTTPHandler.StartServer();
            Program.InitAudioLogger(Logger.GetHdLoggerCallback());
            VMWindow vmWindow = new VMWindow(opt.h, opt.w);

            Application.Run();
        }