qt: 系统默认程序打开文件或者软件;

Qt提供了QDesktopServices类, 可以利用openUrl函数调用默认程序打开文件;

源码参考:

#ifdef Q_OS_WIN32
    m_szHelpDoc = QString("file:///") + m_szHelpDoc;
    bool is_open = QDesktopServices::openUrl(QUrl(m_szHelpDoc, QUrl::TolerantMode));
    if(!is_open)
    {
        LogWriter::getLogCenter()->PrintLog(LOG_ERROR,"open help doc failed" );
        LogWriter::getLogCenter()->SaveFileLog(LOG_ERROR,"open help doc failed" );
        return;
    }
#else
    QString  cmd= QString("xdg-open ")+ m_szHelpDoc;        //在linux下,可以通过system来xdg-open命令调用默认程序打开文件;
    system(cmd.toStdString().c_str());
#endif
原文地址:https://www.cnblogs.com/yinwei-space/p/10174535.html