使用包含空格的参数调用Qprocess-Windows

使用包含空格的参数调用Qprocess-Windows,windows,qt,qprocess,Windows,Qt,Qprocess,我试图用qprocess调用一个可执行文件,并传递一些可能(而且很可能)包含空格(不是全部)的参数。 可执行文件是一个python脚本,它已与Py2exe打包在一起。python脚本使用optparse解析参数 如果我在cmd.exe中调用py2exe.exe,调用如下: pythonExecutable.exe -aarg_a -barg_b -c"path with spaces" -darg_d 这样的电话会成功的 我想通过使用Qprocess的Qt应用程序来实现这一点,但我找不到方法来

我试图用
qprocess
调用一个可执行文件,并传递一些可能(而且很可能)包含空格(不是全部)的参数。 可执行文件是一个
python
脚本,它已与
Py2exe
打包在一起。
python
脚本使用
optparse
解析参数

如果我在
cmd.exe
中调用
py2exe.exe
,调用如下:

pythonExecutable.exe -aarg_a -barg_b -c"path with spaces" -darg_d
这样的电话会成功的

我想通过使用
Qprocess
Qt
应用程序来实现这一点,但我找不到方法来实现,因为
Qprocess
将删除任何引号(
“”
),在出现空格的地方保留断开的参数


我似乎遗漏了一些东西,有人能帮我解决这个问题吗?

如果您以更恰当的方式使用QProcess,这将不是什么大问题

QString program = "pythonExecutable.exe";
QStringList arguments;
arguments <<"-aarg_a"<< "-barg_b"<< "-c\"path with spaces\""<< "-darg_d";

QProcess *myProcess = new QProcess(parent);
myProcess->start(program, arguments);
QString program=“pythonExecutable.exe”;
QStringList参数;
参数可能重复
QString program = "pythonExecutable.exe";
QStringList arguments;
arguments <<"a"<< "path with spaces";

QProcess *myProcess = new QProcess(parent);
myProcess->start(program, arguments);