QProcess will nicht .. direkt system() 1sec.
Verfasst: 23. April 2006 18:11
ob execute oder startDetached ... geben kein zeichen .... jedoch direkt:
/* system("C:/_excel2sqlinsert/fop/fop.bat c:/asi.fo c:/asi.pdf"); */
gibt es in ca. eine sekunde 8 seite neue pdf....
/* system("C:/_excel2sqlinsert/fop/fop.bat c:/asi.fo c:/asi.pdf"); */
gibt es in ca. eine sekunde 8 seite neue pdf....
Code: Alles auswählen
/* external java fop setup & convert */
bool Xslt_Proc::Fopjava( QString fofile , QString pdffile )
{
xslterrormsg = "Error...! start function....";
/* http://xmlgraphics.apache.org/fop/ only java api
http://mirror.switch.ch/mirror/apache/dist/xmlgraphics/fop/binaries/fop-0.92beta-bin-jdk1.4.zip */
javainstall = true;
/* javainstall = getenv("JAVA_HOME") != 0; */
if (javainstall) {
xslterrormsg = QString( "java_dir_found on dir = %1" ).arg( getenv("JAVA_HOME") );
QString app_sh_or_bat;
QStringList argumentlist;
argumentlist << fofile << "," << pdffile;
QProcess pdf_gen;
#if defined(Q_WS_WIN)
pdf_gen.setWorkingDirectory(QCoreApplication::applicationDirPath()+"/fop");
app_sh_or_bat = "fop.bat";
#else
/* mac linux */
if (!is_file("/opt/fop/fop")) {
xslterrormsg = "Error...! fop apache is not install... download a copy on http://xmlgraphics.apache.org/fop/ and copy to /opt/fop/";
return false;
}
pdf_gen.setWorkingDirectory("/opt/fop");
app_sh_or_bat = "./fop";
#endif
/* pdf_gen.startDetached( app_sh_or_bat , argumentlist ); */
pdf_gen.execute( app_sh_or_bat , argumentlist );
xslterrormsg = pdf_gen.readAll();
return true;
} else {
/* start java bin installer .... */
xslterrormsg = "Error...! Java ist not installed....(JAVA_HOME) not found..";
return false;
}
xslterrormsg = "Error...! end function....";
}