gpt4 book ai didi

c++ - 在 C++ 中以编程方式修复 Windows 中的程序 - 也许以某种方式通过 WinAPI?

转载 作者:太空宇宙 更新时间:2023-11-04 11:47:40 25 4
gpt4 key购买 nike

我想从我的 C++ 应用程序运行其他应用程序的 修复 - 以编程方式执行当我在 Windows 中为程序手动选择 修复 选项时会发生什么 ->控制面板->程序

对于删除选项,我可以在注册表中搜索:

  • KEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall
  • HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall在 64 位机器上)

然后使用 UninstallString 查找我必须使用 System() 函数执行的命令。

但是如何以类似的方式运行修复呢? RepairString 等程序在注册表中没有这样的位置。

我想找到所有程序的通用方法(当然我指的是在注册表中留下信息的程序)。

其他问题: MsiEnumProductsEx 列出的应用程序是否有可能没有它们的 UninstallString 注册表项?

附注关于我从 Pat 的帖子中获取的删除选项的注册表整体信息:

Is there Uninstall a program batch for windows?

最佳答案

如果程序是使用 Microsoft Installer 安装的,则可以使用一组适当的开关调用 MSIEXEC。这些开关记录在 TechNet Docs 中.

但即使您使用它,修复选项也有很大差异。在很多情况下,如果原始 MSI 文件不再可用(未插入 CD,或下载的文件已被删除),您将无法启动修复。

关于c++ - 在 C++ 中以编程方式修复 Windows 中的程序 - 也许以某种方式通过 WinAPI?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19393866/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com