通常情况下,如果是一个完备的软件,我们可以通过启动软件的uninstaller.exe之类的程序来完成卸载。但是使用installShield打包的程序,本身可能并不含有这类卸载程序。此时,我们可以通过MsiExec.exe来对其进行卸载。

QProcess process;
process.start("MsiExec.exe /x{???}");
process.waitForFinished();

在QT中,按如下命令,只需要将???替换为软件对应的注册表key值即可。而这个值要怎么找呢?一个简单的方法,是使用应用程序在程序列表(想卸载某一程序时windows的那个列表)中的名字,在注册表中进行搜索,多查找几次,就能找到其位置。对应的也会有MsiExec.exe命令的显示在UninstallString值项里。只要把里面的/I替换成/x,按照上述代码使用即可。

相关文章:

  • 2021-10-11
  • 2021-06-08
  • 2021-07-30
  • 2021-09-12
  • 2021-10-29
  • 2022-12-23
  • 2021-11-27
  • 2021-11-26
猜你喜欢
  • 2021-06-27
  • 2021-11-27
  • 2022-12-23
  • 2021-04-16
  • 2021-08-05
  • 2022-01-11
相关资源
相似解决方案