I have the following:
QProcess *process = new QProcess(this);
QString path = QDir::toNativeSeparators(QApplication::applicationPath);
#if defined(Q_OS_WIN)
process->start("explorer.exe", QStringList() << path);
#elif 开发者_运维知识库defined(Q_OS_MAC)
process->start("open", QStringList() << path);
#endif
How I can achieve the same behavior for let say Ubuntu?
Use QDesktopServices and its openUrl function:
QString path = QDir::toNativeSeparators(QApplication::applicationDirPath());
QDesktopServices::openUrl(QUrl::fromLocalFile(path));
It should work with all OS'es. I have tested it only in Windows.
精彩评论