Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/wix/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在WIX中如何防止降级和重新安装相同版本的应用程序?_Wix_Windows Installer - Fatal编程技术网

在WIX中如何防止降级和重新安装相同版本的应用程序?

在WIX中如何防止降级和重新安装相同版本的应用程序?,wix,windows-installer,Wix,Windows Installer,根据,以下代码应防止降级和重新安装同一版本的应用程序 <CustomAction Id='AlreadyUpdated' Error='Foobar 1.0 has already been updated to 1.0.1 or newer.' /> <CustomAction Id='NoDowngrade' Error='A later version of [ProductName] is already installed.' /> <Ins

根据,以下代码应防止降级和重新安装同一版本的应用程序

  <CustomAction Id='AlreadyUpdated' Error='Foobar 1.0 has already been updated to 1.0.1 or newer.' />
  <CustomAction Id='NoDowngrade' Error='A later version of [ProductName] is already installed.' />

  <InstallExecuteSequence>
    <Custom Action='AlreadyUpdated' After='FindRelatedProducts'>SELFFOUND</Custom>
    <Custom Action='NoDowngrade' After='FindRelatedProducts'>NEWERFOUND</Custom>
  </InstallExecuteSequence>

自找的
纽尔费
此功能应如何工作?
是否应该出现一些错误消息并停止安装?
如我所见,这些示例根本不起作用-可以使用命令“msiexec/I SampleUpgrade.msi REINSTALLMODE=vomus”多次降级并安装同一版本的应用程序。
没有任何错误消息。

我使用WIX 3.8和Windows 7。

可能有一些我们不知道的假设,但您不能安装相同的MSI设置两次。已安装的产品由其ProductCode和PackageCode定义,但更重要的是,您要完成的是什么?如果您想要“相同”产品的多个副本,那么(例如)使用新的ProductCode和PackageCode制作另一个副本。如果要使用新文件更新现有安装的产品,请进行主要升级。如果出于某种原因,这意味着重新安装相同的设置以替换现有设置,那么使用AllowSamenVersionUpgrades的WiX MajorUpgrade元素可能就是您想要的。REINSTALLMODE命令行是更新现有已安装产品的一种方式,而不是安装另一个副本

换句话说,在不知道你的目标的情况下,不清楚如何让你达到你想去的地方