通过 QProcess 重新启动 Windows' explorer.exe

Restart Windows' explorer.exe via QProcess

一开始,Windowsexplorer.exe关闭,桌面黑屏。我的程序需要启动 explorer.exe。这是我试过的:

QProcess process;
process.execute("explorer.exe");

问题是这只会弹出一个新的资源管理器 window 而不是重新激活桌面资源管理器(将黑屏变回桌面)。在 cmdpowershell.

中杀死它后,它应该表现得像 运行 explorer.exe

找到的解决方案:

QProcess::startDetached("explorer.exe"); //Wrong
QProcess::execute("C:\Windows\explorer.exe"); //Wrong
QProcess::startDetached("C:\Windows\explorer.exe"); //Right

如果有人知道为什么 explorer.exe 这样的行为,请分享。