Ich habe eine Qt-basierte Anwendung, die für Mac und Windows funktioniert. Wenn der Benutzer die Software installiert, installiert er auch einen Ordner mit einer Reihe von HTML-Dokumentationsseiten. Wie kann ich den Speicherort der Programminstallation finden, so dass, wenn der Benutzer versucht, Hilfe aus der Anwendung zu öffnen, sie zu index.html
gebracht werden.Wie finde ich das Installationsverzeichnis einer Qt-Anwendung?
Mein Programm wird an den normalen Orten für Windows und Mac installiert. Auf dem Mac wird mein Programm auf /Users/username/Applications/MyProgram
installiert, wobei MyProgram
ein Ordner ist, der "MyProgram.app" und den Ordner "Doc" enthält.
#ifdef Q_OS_MACX
docPath = executablePath + "/Doc/index.html";
#elif Q_OS_WIN
docPath = executablePath + "/Doc/index.html";
#endif
QDesktopServices::openUrl(QUrl::fromLocalFile(docPath));
Also, meine letzte Frage ist, was soll executablePath
sein? Ferner wird davon ausgegangen, dass der Benutzer das Programm an einer anderen Stelle als dem Standardspeicherort installieren kann oder dass das Programm über eine Verknüpfung gestartet werden kann.
möglich Duplikat [wie Namen der ausführbaren Datei in Qt bekommen] (http://stackoverflow.com/questions/4515602/how-to-get-executable-name-in -qt) – syam
Ist QCoreApplication :: applicationDirPath (http://qt-project.org/doc/qt-5.0/qtcore/qcoreapplication.html#applicationDirPath) nicht genau das, was Sie wollen? – Zlatomir