在QT

时间:2016-10-06 11:18:28

标签: qt

嗨我正在检查,任何人都可以在cmd中使用非常相似的命令,如dir mkdir等。 但是例如当我尝试使用命令(cd ..)时我无法

QProcess consola;
consola.start("cmd.exe /C " + comando);
consola.waitForFinished();
consola.waitForReadyRead();

这是我如何在cmd中为qt使用更多命令的问题。

2 个答案:

答案 0 :(得分:0)

至少从命令行:

cmd /C "cd \"

与root之外的目录一样工作。 (注意命令周围的括号,因为它包含嵌入的空格。)但是,这个例子不是很有用,因为它执行命令shell,更改命令shell中的目录,然后命令shell消失,你当前的目录是回到你开始的地方。

我建议查看QDir类,它具有诸如“current()”和“setCurrent()”之类的方法来获取和设置当前目录。有mkdir和许多其他的等价物。此外,使用QDir更加跨平台友好,使用“cmd”shell是特定于Windows的。

你没有说你想要完成什么,所以超出这个建议,就不可能知道如何最好地帮助你。

答案 1 :(得分:0)

您的进程的当前目录可能大部分与您正在运行的当前目录不同。请阅读chdir manpage

该命令主要起作用,但更改了进程的当前目录。