通过 Windows 10“设置”应用程序和旧版控制面板卸载应用程序有啥区别? [关闭]

Posted

技术标签:

【中文标题】通过 Windows 10“设置”应用程序和旧版控制面板卸载应用程序有啥区别? [关闭]【英文标题】:What is the difference between uninstalling an application via the windows 10 "Settings" app and the legacy Control Panel? [closed]通过 Windows 10“设置”应用程序和旧版控制面板卸载应用程序有什么区别? [关闭] 【发布时间】:2021-11-27 00:50:04 【问题描述】:

我们有一个基于 MSI 的 InstallShield 产品安装,最近有人向我们指出,当我们通过旧的“控制面板”“程序和功能”应用程序卸载我们的产品时,使用蓝色 UAC 提示符指示卸载程序是 Windows正在使用的已正确签名,但是当使用“设置”“应用程序和功能”应用程序卸载我们的应用程序时,使用黄色 UAC 提示表示 Windows 正在使用的卸载程序未签名。这两种启动应用程序卸载程序的方法有何不同以及为何不同?我们如何确保我们的客户在所有情况下都运行我们的卸载程序的签名副本?

【问题讨论】:

我没有回答您的问题,但另一个区别是 msix 包仅在“应用程序和功能”中可见,而在经典控制面板中不可见。 【参考方案1】:

我建议检查 WI 用来卸载软件包的“卸载字符串”。检查是否在命令提示符下使用相同的命令,您会得到已签名的安装程序还是未签名的安装程序。

安装软件包后,Windows 会将 MSI 缓存在 Windows\installer 文件夹中。在此过程中,通常会删除所有不必要的信息(包括数字签名)以减小文件的大小。

当软件包类型为 EXE 但其中包含 MSI 时,MSI 会被提取到一个临时位置,安装后无需将其删除。我的预感是,当从“添加或删除程序”启动卸载时,Windows 安装程序会以某种方式使用原始 MSI,但是当使用“应用程序和功能”中的卸载时,正在使用缓存的 MSI,因此没有可用的数字签名。

与此问题无关的 2 之间的另一个区别是 msix 包仅在“应用程序和功能”中可见,而在经典控制面板中不可见。

【讨论】:

以上是关于通过 Windows 10“设置”应用程序和旧版控制面板卸载应用程序有啥区别? [关闭]的主要内容,如果未能解决你的问题,请参考以下文章

二进制XCFramework是否可以和旧版swift一起使用?

手机AndroidKeyStore

为啥我在使用 ActionBar Sherlock 和旧版 android 版本时在 onCreate() 处收到错误? [关闭]

如何使用休眠和旧版数据库从 char 字段 pojo 中修剪空格

旧版“dhcp”和新版“dhcp”有啥区别?

windows server 2008密码忘记怎么办