【发布时间】:2012-10-07 13:38:14
【问题描述】:
我对 QProcess 有一个非常奇怪的问题,而且它的行为很奇怪。
我最后想得到的是这样的(这是 Windows 7 中的 cmd.exe)
C:\path_to_somewhere>cmd /c "C:\Program Files\path_to_dir\executable"
(cmd是为了兼容QProcess的show)
为了做类似的事情,我创建了这个:
QProcess proc;
QString command;
QStringList attributes;
command = "c:\\windows\\system32\\cmd.exe";
QStringList << QString("/c \"C:\\Program Files\\path_to-dir\\executable"");
proc.start(command, attributes);
我得到的错误输出是:
Name '\"c:\Program Files\Quantum GIS Wroclaw\bin\gdalwarp.exe\"' is not recognized as
internat or external command, executable or batch file.
(它是我从波兰语翻译过来的,所以英文可能有点不同)。
似乎 \ 字符没有在字符串中转义,将 \" 作为命令中的字符。我做错了什么?
我试过了
proces.start(QString)
具有三重\“\”\”的功能,它也不起作用。我想这个问题的解决方案必须非常简单,以至于我没有考虑它。
【问题讨论】: