QProcess 调用Windows系统中msedge.exe软件打开指定的pdf文件
时间: 2024-09-19 22:03:51 浏览: 42
在Qt中使用`QProcess`调用Windows系统的`msedge.exe`软件打开指定PDF文件,你可以按照以下步骤操作:
1. 首先,确保你有`msedge.exe`的完整路径,这通常可以在安装Microsoft Edge的默认位置找到(例如 `%ProgramFiles(x86)%\Microsoft Edge\Application` 或 `%LocalAppData%\Packages\Microsoft.MicrosoftEdge_8wekyb3d8bbwe\InstallLocation`)。
2. 使用`QProcess::startDetached()`方法来异步启动`msedge.exe`,并传递PDF文件的路径作为参数。在这个例子中,假设你的PDF文件路径是`pdfFilePath`:
```cpp
QString edgeExePath = "C:\\Program Files (x86)\\Microsoft Edge\\Application\\msedge.exe"; // 替换为你实际的路径
QString command = QString("%1 \"%2\"").arg(edgeExePath).arg(pdfFilePath);
QProcess edgeProcess;
edgeProcess.startDetached(command, QIODevice::ReadOnly); // 第二个参数可以省略,如果不需要读取输出
// 如果你需要等待msedge.exe关闭,可以设置waitForFinished选项
edgeProcess.waitForFinished();
```
注意:由于`startDetached`是非阻塞的,`waitForFinished`在这里会让当前线程暂停直到边缘浏览器进程结束。如果你不希望阻塞,可以使用`finish`代替`waitForFinished`。
阅读全文