gpt4 book ai didi

c++ - linux:如何断开远程用户访问?

转载 作者:太空宇宙 更新时间:2023-11-04 04:21:03 25 4
gpt4 key购买 nike

我正在设计一个应用程序,通过 Qt 中的 QProcess 使用 vncviewer 访问远程屏幕。(我在远程桌面上使用vino-server)登录远程屏幕(全屏模式)后,我想断开远程共享并切换回本地屏幕。

有什么Qt方法可以做到吗?

如何通过linux命令行实现这一点?

我使用的是 Linux 操作系统 (ubuntu)。

任何想法/建议都值得赞赏。

最佳答案

我找到了解决此问题的方法。

考虑到系统处于远程访问状态。要断开与远程用户的连接,只需停止 vnc 服务器,然后在需要时重新启动它,或者使用计时器,在几秒钟后重新启动它。这将断开远程用户与服务器的连接。

使用命令行,可以按如下方式完成:

  1. 停止 VNC 服务器打开终端并输入以下命令:

     $ gconftool-2 -s -t bool /desktop/gnome/remote_access/enabled false
  2. 启动 VNC 服务器打开终端并输入以下命令:

     $ gconftool-2 -s -t bool /desktop/gnome/remote_access/enabled true

通过创建两个 bash shell 脚本可以更加简化:

startvnc.sh

    #!/bin/bash
#
# This script starts enables System -> Preferences -> Remote Desktop

gconftool-2 -s -t bool /desktop/gnome/remote_access/enabled true</pre>

停止vnc.sh

    #!/bin/bash
#
# This script starts enables System -&gt; Preferences -&gt; Remote Desktop

gconftool-2 -s -t bool /desktop/gnome/remote_access/enabled false</pre>

创建这些脚本后,使用以下命令使它们可执行:

    $ chmod +x startvnc.sh
$ chmod +x stopvnc.sh

如果需要,可以为它们创建别名。在文本编辑器中打开 ~/.bashrc,滚动到底部,然后输入以下两行:

    alias startvnc=/path/to/your/startvnc.sh
alias stopvnc=/path/to/your/stopvnc.sh</pre>

现在,当您通过 SSH 连接到您的盒子(或打开命令行)时,您只需键入

    $ startvnc

[启用远程桌面],或

    $ stopvnc

[禁用远程桌面]。

现在,在Qt中,使用QProcess可以非常轻松地实现。

关于c++ - linux:如何断开远程用户访问?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13192599/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com