[SOLVED]Open file with it default program
- 
Hi guys... I need to open a file with it default program defined in the OS. I'm doing this to open a pdf: 
 @qDebug() << QDesktopServices::openUrl(QUrl("file:///home/freddy/unordered.pdf", QUrl::TolerantMode));@
 and my program crash it . I test with this code too:
 @qDebug() << QDesktopServices::openUrl(QUrl("/home/freddy/unordered.pdf", QUrl::TolerantMode));@
 and
 @qDebug() << QDesktopServices::openUrl(QUrl("file:///home/freddy/unordered.pdf"));@
 and the result is the same:
 @The program has unexpectedly finished.@
 I'm using Qt5.2.1 in Archlinux, but my app will run over Mac and Windows too,any advice please ?? thanks !!! best regards 
- 
Hi, Can you try building your url using "fromLocalFile":http://qt-project.org/doc/qt-5/qurl.html#fromLocalFile ? 
- 
Hi SGaist !!! thanks for answer !!! I had try: 
 @qDebug() << QDesktopServices::openUrl(QUrl::fromLocalFile("file:///home/freddy/unordered.pdf"));@but the program stil crash it !!! 
- 
Works for me on OSX (Qt-5.3-beta) and Ubuntu (Qt-5.2.1) 
 @
 qDebug() << QDesktopServices::openUrl(QUrl::fromLocalFile("/home/user/tdd.pdf"));
 qDebug() << QDesktopServices::openUrl(QUrl("file:///home/user/GUIdesign.pdf", QUrl::TolerantMode));
 @Do you have a core file? Could you post a backtrace log here. You don't need to add "file://" if you use @QUrl::fromLocalFile(...)@ 
- 
yes... my core file is only: @ 
 #include <QDesktopServices>int main() 
 {
 qDebug() << QDesktopServices::openUrl(QUrl::fromLocalFile("file:///home/user/unordered.pdf"));
 return 0;
 }
 @and the backtrace log just tell me @Starting /home/freddy/Trabajo/bpg/andy&pedro/proyecto/build-adviser-Clang-Debug/adviser... 
 QML debugging is enabled. Only use this in a safe environment.
 The program has unexpectedly finished.
 /home/freddy/Trabajo/bpg/andy&pedro/proyecto/build-adviser-Clang-Debug/adviser crashed@
- 
You need to initialize QApplication in order in use QDesktopServices Try this 
 @
 #include <QApplication>
 #include <QDebug>
 #include <QUrl>
 #include <QDesktopServices>int main(int argc, char *argv[]) 
 {
 QApplication a(argc, argv);qDebug() << QDesktopServices::openUrl(QUrl::fromLocalFile("/home/user/tdd.pdf")); qDebug() << QDesktopServices::openUrl(QUrl("file:///home/user/GUIdesign.pdf", QUrl::TolerantMode)); return 0;} @ 
- 
That right andreyc Thank you for your help guys !!! It's work !!! 
 
