如何在Qt程序中获得root权限? [英] How to get root permission inside Qt program?

查看:65
本文介绍了如何在Qt程序中获得root权限?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我需要使用 qt 小部件应用程序在根目录中创建目录.

I need to create directory inside root directory using a qt widget application.

void Home::on_pushButton_clicked()
{
    system("mkdir /bin/mydir");
}

但是,如何在/bin 文件夹中创建文件夹之前获得 root 权限

But,how to get root privilege before making folder inside /bin folder

推荐答案

你可以在编程中使用 pkexec 命令获取 root 密码,如下所示:

you can get root password using pkexec command inside programming like below:

 void Home::on_pushButton_clicked()
 {
    system("pkexec mkdir /bin/myDir");
 }

或者你可以尝试使用 QProcess 类,但是对于你的目的 pkexec 就足够了.但是在这种模式下你必须手动输入密码,但是如果你想在不输入密码的情况下获得 root 权限手动,您可以在代码中输入密码,然后您可以考虑以下代码:

or you can try to using QProcess class, however for your purpose the pkexec is enough.But in this mode you have to enter password manually, but if you want to get root permission without entering password manually and you could enter your password inside of the code then you may consider the below code:

QProcess process;
process.start("echo your_password | sudo -S mkdir /bin/myDir");

这篇关于如何在Qt程序中获得root权限?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆