[Qt-interest] QProcess on windows and the dirty work of quotes...
Jason H
scorp1us at yahoo.com
Wed Apr 21 04:38:50 CEST 2010
I think all you need is LOVE. Oh and,
qslAppParams << "--params=\"<absoulte path with
spaces>/filename.any\""
----- Original Message ----
From: Gilberto Cuba Ricardo <gilbert at hlg.rimed.cu>
To: QT Mailing LIST <qt-interest at trolltech.com>
Sent: Tue, April 20, 2010 3:46:13 PM
Subject: [Qt-interest] QProcess on windows and the dirty work of quotes...
Hi,
I'm trying to run a Windows process with QProcess class and I
encountered with several difficulties. The first one is when I try
to terminate a process that have a child process; because QProcess
don't close all process tree. The second one, -and this really
affect to me so much- is with the quotes and spaces on programs
parameters. For example:
QProcess *processApp = new QProcess(this);
...
QString qsAppName = "<absoulte path with spaces>/mysqld-nt.exe";
QStringList qslAppParams;
// this not a problem...
qslAppParams << "--standard_param";
// ok... I understands that I not need to put a quotes... it's make
// a dirty work, but...
qslAppParams << "\"param_with_explicits_quotes\"";
// here is my big problem...
qslAppParams << "--params=<absoulte path with spaces>/filename.any"
...
processApp->start( qsAppName, qslAppParams );
processApp->waitForStarted(1000);
Why the third params is a problem? Because if I put a quotes after
equal sign and at the end line, 'QProcess' insert before the quotes,
one backslash (\), and if I don't put nothing (quotes) it
('QProcess') put a quotes at the first and at the end of argument
line, and these changes are incorrect. I don't know do that!
I really don't understands why QProcess make this functionality.
I look in the source code 'src/corelib/io/qprocess_win.cpp' on
function 'qt_create_commandline()' and I confuse with the two first
QString replaces of loop 'for', but I consider that this is not a
better work for help.
Exist any form to pass a arguments parameters of program to a
function start(...), that it ('QProcess') don't make any changes?
I think that these difficulties not only affect to me and it's
possible to include these features for a new version of Qt. If anyone
is disagree with my opinion or somebody have a persuasive answer to my
problems, I'm all ears.
--
Cheers,
Lic. Gilberto Cuba Ricardo
Sorry for my English. :)
_______________________________________________
Qt-interest mailing list
Qt-interest at trolltech.com
http://lists.trolltech.com/mailman/listinfo/qt-interest
More information about the Qt-interest-old
mailing list