Exemple #1
0
        private static void RunCommand(string[] args)
        {
            if (args.Length < 2)
            {
                return;
            }

            var service = OculusUtil.FindOculusService();

            if (service == null)
            {
                Error(Resources.Error_VR_Service_Not_Found);
                return;
            }

            var oculusService = new OculusService(service);

            switch (args[1].ToLowerInvariant())
            {
            case OculusService.StartCommand:
                oculusService.Start();
                break;

            case OculusService.StopCommand:
                oculusService.Stop();
                break;

            case OculusService.RestartCommand:
                oculusService.Restart();
                break;
            }
        }
Exemple #2
0
 public void Restart()
 {
     if (OculusUtil.IsElevated)
     {
         Stop();
         Start();
     }
     else
     {
         _temporaryStatus = ServiceControllerStatus.StartPending;
         OculusUtil.ElevateMe(RestartCommand, true);
         _temporaryStatus = null;
     }
 }
Exemple #3
0
 public void Stop()
 {
     if (OculusUtil.IsElevated)
     {
         _service.Stop();
         _service.WaitForStatus(ServiceControllerStatus.Stopped);
     }
     else
     {
         _temporaryStatus = ServiceControllerStatus.StopPending;
         OculusUtil.ElevateMe(StopCommand, true);
         _temporaryStatus = null;
     }
 }
Exemple #4
0
        private static void StartTrayIcon()
        {
            var service = OculusUtil.FindOculusService();

            if (service == null)
            {
                Error(Resources.Error_VR_Service_Not_Found);
                return;
            }

            var clientPath = OculusUtil.GetOculusClientPath();

            if (clientPath == null)
            {
                Error(Resources.Error_Oculus_Client_Not_Found);
                return;
            }

            using (new OculusTrayIcon(new OculusService(service), clientPath))
            {
                Application.Run();
            }
        }