はい、簡単にできます。

Windows

FOVE Runtime (FOVE Serviceとも呼ばれます)は通常のWindowsサービスなので、OS標準の方法で起動・停止や有効化・無効化ができます。サービスの名前はFoveRuntimeです。

実際、FOVE Debug ToolやFOVE Tray Applicationは、内部でFoveRuntimeサービスを起動・停止しているだけです。

PowerShell

標準コマンドが使えます。

Start-Service FoveRuntime
Stop-Service FoveRuntime
Get-Service FoveRuntime

ServiceStopStopPowerShell.png

C#

System.ServiceProcess.dllのSystem.ServiceProcess namespace内の関数を利用できます。ご利用のプロジェクト内で当該アセンブリへの参照を追加するのを忘れないようご注意ください。

using System.ServiceProcess;
using System.Threading;

namespace MyApp
{
  class Program
  {
    static void Main(string[] args)
    {
      ServiceController service = new ServiceController("FoveRuntime");

      // Wait until the service is stopped
      // Beware of infinite loop, may want to add a timeout
      if (!service.Status.Equals(ServiceControllerStatus.Stopped))
      {
        service.Stop();
        Thread.Sleep(200);
      }

      // Start the service again
      service.Start();
    }
  }
}

Linux

fove-serviceは、単なる実行可能ファイルなので、任意の方法で起動することができます。 また、各種POSIXシグナルも無視せず受け取るので、必要に応じてプロセスを直接殺して頂くことも可能です。 なお、fove-serviceをroot権限で実行することはおすすめしません。一般ユーザで、sudo権限無しでご起動下さい。

Kill Signals

仮想端末からfove-serviceを(フォアグラウンドで)起動された場合、Ctrl+Cを押すことでプロセスを停止することができます。 また、fove-serviceのプロセスIDを探して頂ければ、別の端末やプロセスからもプロセスを停止することができます。

fove-service
kill `pidof fove-service`

FoveStartStopTerm.png

systemd

FOVEは標準でsystemdサポートと共に配布されていますので、標準的なsystemdコマンドでサービスの起動・停止を行うことができます。

systemctl --user start fove-service
systemctl --user stop fove-service
systemctl --user status fove-service