Я хочу запустить команду печати lpr -p
программно через привилегии root в Qt. На самом деле я хочу напечатать файл PDF, используя эти команды. Эта команда работает через терминал, но не программно.
Заранее спасибо.
вы можете запускать команды, которым нужны права root, запустив:
echo myPass | sudo -S lpr -p
Хотя выводить пароль в оболочке не очень хорошая идея, вы можете сделать это в Qt через Qprocess
лайк :
QProcess process1;
QProcess process2;
process1.setStandardOutputProcess(&process2);
process1.start("echo myPass");
process2.start("sudo -S lpr -p");
process2.setProcessChannelMode(QProcess::ForwardedChannels);process2.waitForFinished(3000);