設定:
Raspberry PiはRaspbianを起動し、モニター(HDMI)を接続します。
継続的に実行されるシステムサービス(デーモン)
ターゲット:
ディスプレイに表示される新しい端末ウィンドウを起動します。
概念証明としてシェルスクリプトを実行したいと思います。
サービスでシェルスクリプトを実行するのに問題はありませんが、ディスプレイに表示されるウィンドウを開くのは難しいようです。
コード(デーモン)
var process = new Process()
{
StartInfo = new ProcessStartInfo
{
FileName = "/bin/bash",
Arguments = $"-c \"{Paths.Dotnet} /path/to/app.dll\"",
WorkingDirectory = workingDirectory,
RedirectStandardOutput = false,
UseShellExecute = false,
CreateNoWindow = false,
WindowStyle = ProcessWindowStyle.Maximized
}
};
process.Start();
string result = process.StandardOutput.ReadToEnd();
process.WaitForExit();
**編集する**パラメータを次のように変更します。
Arguments = $"-c \"DISPLAY=:0.0 lxterminal -e {Paths.Dotnet} /path/to/app.dll\""
問題は解決されませんでした。 app.dllが実行されますが、まだバックグラウンドにあります。