[Qt]调用windows进程(打开文档,打开图片,打开文件夹...)

 打开文档:

QStringLiteral用于兼容中文。

QString fileName(qApp->applicationDirPath() + QStringLiteral("/Help/使用手册.doc"));
    if (!QDesktopServices::openUrl(QUrl::fromLocalFile(QFileInfo(fileName).absoluteFilePath())))
    {
        QMessageBox::information(this, tr("warning"),
            tr("Failed to open the help guide."),
            QMessageBox::Ok);
    }

打开图片:

方式一:

QDesktopServices::openUrl(QUrl(QString("file:///‪C:/Users/Desktop/image.bmp"));

方式二:

QProcess* process = new QProcess();
QString lastPicPath = logPath;

QString sPicPath = lastPicPath.replace("/", "\\");
QString program = "cmd.exe";
QStringList para;
para << "/c";
//命令间需要添加空格
para << QString("rundll32") + QString(" %Systemroot%\\System32\\shimgvw.dll,ImageView_Fullscreen ")+ sPicPath;
process->start(program, para);

打开文件夹:

openFileExplorer(QString path)
{
    QString filepath = path;
    //打开资源管理器并高亮文件
    const QString explorer = "explorer";
    QStringList param;
    if (!QFileInfo(filepath).isDir())
        param << QLatin1String("/select,");
    param << QDir::toNativeSeparators(filepath);
    QProcess::startDetached(explorer, param);
}

  • 1
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值