只允许安装一个版本的 choco 包的推荐方法是什么?

问题描述 投票:0回答:1
  • 我是否应该在 Chocolateybeforemodify 脚本中使用 choco list 命令检查该软件包是否已安装,如果找到则将其卸载? 但如何判断beforemodify脚本是否因升级或卸载而被调用呢?
  • 或者我是否检查该软件包是否已安装在 Chocolateyinstall 脚本中? 我还尝试通过检查
    $chocoPackage = choco list $myPackageName --exact | Where-Object {$_.StartsWith($myPackageName)} if ($chocoPackage -ne $null) { }
    在此脚本中执行此操作,但即使未安装它也是如此。
package upgrade chocolatey
1个回答
0
投票

Chocolatey CLI 将负责处理该包裹。你问的是软件。

chocolateyBeforeModidy.ps1
在升级或卸载软件包期间运行。一般用于检查正在运行的服务、进程等

不要在包脚本中使用

choco

 命令。这可能会导致问题。

检查软件是否已安装的最佳方法是检查它对系统所做的任何操作以“注册”已安装的软件。所以这可能是注册表更改、文件系统更改或其他原因。

我使用我维护的

Keepass 插件包来完成此操作。由于 Keepass 可以安装在很多地方,而且安装方式也不同,所以我都检查了。

© www.soinside.com 2019 - 2024. All rights reserved.