コード例 #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);
     }
 }
コード例 #2
0
 public static void Main(string[] args)
 {
     BlueStacks.ComRegistrar.ComRegistrar.Init();
     BlueStacks.ComRegistrar.ComRegistrar.sOpt.Parse(args);
     if (args.Length != 1 || !BlueStacks.ComRegistrar.ComRegistrar.sOpt.reg && !BlueStacks.ComRegistrar.ComRegistrar.sOpt.unreg)
     {
         Logger.Error("No/invalid arguments given. Exiting");
         Environment.Exit(2);
     }
     if (!SystemUtils.IsAdministrator())
     {
         Logger.Fatal("Not admin, exiting");
         Environment.Exit(4);
     }
     if (ProcessUtils.CheckAlreadyRunningAndTakeLock("Global\\BlueStacks_UnRegRegCom_Lockbgp", out BlueStacks.ComRegistrar.ComRegistrar.sLock))
     {
         Logger.Info("Another instance of ComRegistrar is already running");
         Environment.Exit(1);
     }
     if (args.Length != 0)
     {
         Logger.Info("args: {0}", (object)string.Join(" ", args));
     }
     if (BlueStacks.ComRegistrar.ComRegistrar.sOpt.reg)
     {
         Logger.Info("Validating oleaut registries");
         if (FixUpOle.FixOle((string)null))
         {
             Logger.Info("Oleaut Validation successful");
         }
         else
         {
             Logger.Info("Oleaut Validation failed, continuing anyway");
         }
     }
     if (BlueStacks.ComRegistrar.ComRegistrar.sOpt.reg)
     {
         ulong num = RegisterProxyStub.DllRegisterServer();
         if (num != 0UL)
         {
             MultiInstanceUtils.SetDeviceCapsRegistry(string.Format("Registration error: {0}", (object)num), EngineState.legacy.ToString());
             Logger.Fatal("Unable to register BstkProxyStub.dll, Error: {0}", (object)num);
             Environment.Exit(10);
         }
     }
     else if (BlueStacks.ComRegistrar.ComRegistrar.sOpt.unreg)
     {
         Logger.Info("Unregistering components");
         long num = (long)RegisterProxyStub.DllUnregisterServer();
     }
     Environment.Exit(0);
 }