How to run .exe file from absolute path with button click
-
can any one help me exactly where i have to keep that .exe file which should open on buttton click.
-
The location of your exe is basically irrelevant. More important is the presense of required dlls. Checkout for "this for more details.":http://qt-project.org/doc/qt-5/windows-deployment.html
-
i need the code of button-click event.(just to run some patcher.exe file)
-
QString fullProgramPath =QDir::currentPath();
fullProgramPath.append("/Patcher.exe");
QStringList arguments;
arguments << "install";
QProcess::startDetached(fullProgramPath, arguments);anything wrong in it?
-
actually what i need to do is...
i should install an exe on button click.The things i need to understand
1.Where should i place that exe file in my application
2.How to run that through code -
Can you try something very simple now from your main.
@ QProcess *proc = new QProcess;
QString progName = "c:/users/madhavi/Patcher";
proc->start(progName);
proc->errorString()
@
I'm assuming that your exe is in c:/users/madhavi directory. If you are able to run this, your first step is solved.Now.
@ connect(pushButton,SIGNAL(clicked()),this,SLOT(launchPatch()));
void MyClass::LaunchPatch(){
qDebug() << "Show the Calcualtror"<<endl;QProcess *proc = new QProcess; QString progName = "c:/users/madhavi/Patcher"; proc->start(progName); proc->errorString() proc->errorString(); qDebug()<< " Started the process"<<endl;
}
@This should solve your issue.
-
not working...:(
-
what is not working ? What is the error you get ? If you can paste your code we can help you better.
-
i used the same.Am not getting any error message and no output. I used startDetached also. but still am not getting any output atleast error.
-
If you can drop your code and how you are trying that will help. Can you try with some other executable to start the program ? This is just ensure that you don't have any problem starting new process from Qt.
-
yes thank you. the problem is with exe file. I tried another exe as u said,it is working fine. finally got solution.:)
-
This is cool. How about moving this Question to SOLVED state by editing the subject line of your question ?
-
actually am trying to execute 4.50MB file(exe size)..is that that problem ?
-
QProcess *proc = new QProcess; QString progName ="C:/Patcher"; proc->start(progName); proc->errorString();
-
4.5 MB is not a issue at all. Is it not running ? May be there is dependency with some libraries. Check it.
-
i can run that exe directly.but not able through code...
-
finally got solution by using
QDesktopServices::openUrl(QUrl("file:///"+progName,QUrl::TolerantMode)); -
What is the error string you get ? I suspect the issue with dependency dlls not in path. Launching 4.5 MB exe is not issue.