Qt如何打开设备管理器

3

我将尝试从Qt Windows应用程序的按钮打开设备管理器。

我的尝试:

将槽/信号分配给按钮。并使用以下方法:

 QProcess *proc = new QProcess(this);
    QString cmdStr = "devmgmt.msc";
    proc->start(cmdStr);
    qDebug() << "btn clicked";

但是当我点击它时,什么都没有发生。控制台中显示了“btn clicked”。

编辑:我也尝试过

cmdStr="mmc devmgmt.msc"

但是也无法打开。
1个回答

4

Ok,通过使用QDesktopServices,我成功地让它工作了。

QDesktopServices::openUrl(QUrl("file:///C:/Windows/System32/devmgmt.msc", QUrl::TolerantMode));

以下是其他可能会感兴趣的 Windows 应用程序列表:
系统信息
命令提示符
QProcess::startDetached("\"C:\\Windows\\System32\\cmd.exe\"");

控制面板

QProcess::startDetached("\"C:\\Windows\\System32\\control.exe\"");

放大镜
QDesktopServices::openUrl(QUrl("file:///C:/Windows/System32/Magnify.exe", QUrl::TolerantMode));

注册表编辑

QDesktopServices::openUrl(QUrl("file:///C:/Windows/System32/regedt32.exe", QUrl::TolerantMode));

服务

QDesktopServices::openUrl(QUrl("file:///C:/Windows/System32/services.msc", QUrl::TolerantMode));

系统信息

QDesktopServices::openUrl(QUrl("file:///C:/Windows/System32/msinfo32.exe", QUrl::TolerantMode));

设置

QDesktopServices::openUrl(QUrl("file:///C:/settings", QUrl::TolerantMode));

浏览器

system("explorer.exe");

任务管理器

QDesktopServices::openUrl(QUrl("file:///C:/Windows/System32/Taskmgr.exe", QUrl::TolerantMode));

磁盘清理

QProcess::startDetached("\"C:\\Windows\\System32\\cleanmgr.exe\"");

MsConfig

system("C:/Windows/System32/msconfig.exe");

远程桌面

QDesktopServices::openUrl(QUrl("file:///C:/Windows/System32/msra.exe", QUrl::TolerantMode));

资源监视器

QProcess::startDetached("\"C:\\Windows\\System32\\resmon.exe\"");

系统修复光盘

system("C:/Windows/System32/recdisc.exe");

内存诊断

QDesktopServices::openUrl(QUrl("file:///C:/Windows/System32/MdSched.exe", QUrl::TolerantMode));

系统还原
QDesktopServices::openUrl(QUrl("file:///C:/Windows/System32/rstrui.exe", QUrl::TolerantMode));

启动文件夹

QDesktopServices::openUrl(QUrl("file:///C:/Users/dclar.DESKTOP-JTNNAGR/AppData/Roaming/Microsoft/Windows/Start Menu/Programs/Startup", QUrl::TolerantMode));

运行命令

system("c:/windows/system32/rundll32.exe shell32.dll,#61");

驱动程序优化

QProcess::startDetached("\"C:\\Windows\\System32\\dfrgui.exe\"");

磁盘管理
system("C:/Windows/System32/diskmgmt.msc");

计算机管理

QDesktopServices::openUrl(QUrl("file:///C:/Windows/System32/CompMgmtLauncher.exe", QUrl::TolerantMode));

文本调整器

QProcess::startDetached("\"C:\\Windows\\System32\\cttune.exe\"");

计算机服务

QDesktopServices::openUrl(QUrl("file:///C:/Windows/System32/dcomcnfg.exe", QUrl::TolerantMode));

设备管理器

QDesktopServices::openUrl(QUrl("file:///C:/Windows/System32/devmgmt.msc", QUrl::TolerantMode));

DirectX诊断工具

QProcess::startDetached("\"C:\\Windows\\System32\\dxdiag.exe\"");

文件历史记录

QProcess::startDetached("\"C:\\Windows\\System32\\FileHistory.exe\"");

蓝牙传输

QProcess::startDetached("\"C:\\Windows\\System32\\fsquirt.exe\"");

添加硬件

QDesktopServices::openUrl(QUrl("file:///C:/Windows/System32/hdwwiz.exe", QUrl::TolerantMode));

光盘标签
QProcess::startDetached("\"C:\\Windows\\System32\\label.exe\"");

语言安装程序

QProcess::startDetached("\"C:\\Windows\\System32\\lpksetup.exe\"");

恶意软件清除工具
QProcess::startDetached("\"C:\\Windows\\System32\\MRT.exe\"");

Narrator 叙述者
QDesktopServices::openUrl(QUrl("file:///C:/Windows/System32/Narrator.exe", QUrl::TolerantMode));

用户账户

QDesktopServices::openUrl(QUrl("file:///C:/Windows/System32/Netplwiz.exe", QUrl::TolerantMode));

Windows备份

QDesktopServices::openUrl(QUrl("file:///C:/Windows/System32/sdclt.exe", QUrl::TolerantMode));

创建共享文件夹

QDesktopServices::openUrl(QUrl("file:///C:/Windows/System32/shrpubw.exe", QUrl::TolerantMode));

系统关机

QDesktopServices::openUrl(QUrl("file:///C:/Windows/System32/shutdown.exe", QUrl::TolerantMode));

便笺

QProcess::startDetached("\"C:\\Windows\\System32\\StikyNot.exe\"");

系统重置

QDesktopServices::openUrl(QUrl("file:///C:/Windows/System32/systemreset.exe", QUrl::TolerantMode));

易用性

QProcess::startDetached("\"C:\\Windows\\System32\\Utilman.exe\"");

文字编辑器

QProcess::startDetached("\"C:\\Windows\\System32\\write.exe\"");

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接