【问题标题】:Closing window manager & powering off from C#/Mono program关闭窗口管理器并从 C#/Mono 程序关闭电源
【发布时间】:2020-02-18 11:59:54
【问题描述】:

我正在用 mono/C# 开发一个程序,它将在带有触摸屏的 Linux 嵌入式平台上运行。

我已经在 Raspbian 上安装了 OpenBox,因为它会在“kiosk 模式”下运行,并且我试图让它尽可能简单。

我计划在该计划中有两个选择:

  1. 关闭计算机的选项
  2. 关闭窗口管理器(openbox)并返回终端的选项

对于我尝试使用的第一个选项:

shutdown
poweroff
systcl poweroff

命令,但都需要特殊权限,所以我不确定什么是最好的方法。我应该创建一个具有 root 权限的 bash 脚本并从程序中运行此脚本吗?

对于第二个选项,我什至不知道如何开始。我已将 openbox 配置为能够通过 Ctrl + Alt + Backspace 从键盘关闭它,但我知道如何从程序中关闭它。 我已经尝试使用带有该组合键的 SendKeys 但不起作用。

我也使用DBUS for C# 尝试了解决方案here,但我在编译它时遇到了问题。

您能给点建议吗?

【问题讨论】:

    标签: c# linux mono raspbian openbox


    【解决方案1】:

    您可以设置您的 sudo 程序,让用户无需任何密码即可运行程序。 添加到您的 visudo 文件中:

    <username-or-ALL> ALL=(ALL) NOPASSWD:/sbin/poweroff
    

    See this maybe

    如果我是你,我会在设置后和测试前重新启动。

    【讨论】:

    • 谢谢,我认为这是个好主意。关于另一个问题,您对如何关闭 openbox 并返回终端有任何想法吗?
    • 不抱歉,我从未使用过 openbox
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-12-17
    • 2017-01-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多