2023年12月20日发(作者:)
“此操作只对目前安装的产品有效”的终极解决办法
今天在Windows 7下安装软件新版本时,不小心误点了卸载旧版本安装进程界面的“取消”按钮。导致再次运行安装程序的时候卡在了一个蛋疼的“此操作只对目前安装的产品有效”安装提示界面。
想到可能是刚才卸载进程中断,导致旧版本没卸载干净。于是搜索注册表删除了大多数和SU相关的注册表信息,结果情况依然。
各种卸载软件测试一遍,均没有发现有旧版本的影子。
用谷歌搜索偶然发现这个帖子,收到启发,然后查看了msiexec这个命令的相关参数如下:
msiexec /Option 安装选项 〈> 安装或配置产品 /a <〉 管理安装 – 在网络上安装产品 /j 〈Product。msi> [/t 〈Transform List>] [/g 〈Language ID〉] 公布产品 – m 公布到所有用户,u 公布到当前用户 〈/uninstall | /x〉 < | ProductCode> 卸载产品 显示选项 /quiet 安静模式,无用户交互 /passive 无人参与模式 – 只显示进度栏 /q[n|b|r|f] 设置用户界面级别 n – 无用户界面 b – 基本界面 r – 精简界面 f – 完整界面(默认值) /help 帮助信息 重新启动选项 /norestart 安装完成后不重新启动 /promptrestart 必要时提示用户重新启动 /forcerestart 安装后始终重新启动计算机 日志选项 /l[i|w|e|a|r|u|c|m|o|p|v|x|+|!|*] i – 状态消息 w – 非致命警告 e – 所有错误消息 a – 操作的启动 r – 操作特定记录 u – 用户请求 c – 初始用户界面参数 m – 内存不足或致命退出信息 o – 磁盘空间不足消息 p – 终端属性 v – 详细输出 x – 额外调试信息 + – 扩展到现有日志文件 ! – 每一行刷新到日志 * – 记录所有信息,除了 v 和 x 选项 /log 与 /l* 相同 更新选项 /update 〈〉[;] 应用更新 /uninstall 〈PatchCodeGuid〉[;] /package 〈Product。msi | ProductCode> 删除产品的更新 修复选项 /f[p|e|c|m|s|o|d|a|u|v] 〈Product。msi | ProductCode〉 修复产品 p – 仅当文件丢失时 o – 如果文件丢失或安装了更旧的版本(默认值) e – 如果文件丢失或安装了相同或更旧的版本 d – 如果文件丢失或安装了不同版本 c – 如果文件丢失或较验和与计算的值不匹配 a – 强制重新安装所有文件 u – 所有必要的用户特定注册表项(默认值) m – 所有必要的计算机特定注册表项(默认值) s – 所有现有的快捷键方式(默认值) v – 从源运行并重新缓存本地安装包 设置公共属性 [PROPERTY=PropertyValue] 于是尝试开始菜单/运行/输入“cmd”,输入命令"msiexec /o e:/a。msi“,终于搞定. 如果安装包是。exe后缀的,可以尝试用WinRAR软件解压缩到独立文件夹,应该就能找到一个.msi的文件,然后参照命令(msiexec /o e:/)替换相应选项参数和文件路径即可。


发布评论