相关疑难解决方法(0)

从WiX捆绑包将命令行参数传递给MSI

我在Wix 3.7上.我有一个MSI,我想设置一个注册表项(可能通过自定义操作,因为他将不得不检查该键是否已存在).

据我所知,bootstrapper项目中的Bundle无法更改机器状态(例如设置注册表).因此,我试图通过命令行参数传递<MsiProperty>,但似乎不会在我的日志文件中显示为引导程序的命令行参数.

  1. 是否可以在Bundle中设置注册表项?
  2. 如果没有,我如何添加要传递给MSI的命令行参数(或其他一些自定义数据).
  3. MSI如何读取它传递给它的任何东西(无论它最终是命令行arg还是其他东西).

束:

<?xml version="1.0" encoding="UTF-8"?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
  <Bundle 
          Name="MyInstallerBootstrapperLocalDb" 
          Version="1.0.0.0" 
          Manufacturer="some company" 
          UpgradeCode="PUT-GUID-HERE">
    <BootstrapperApplicationRef Id="WixStandardBootstrapperApplication.RtfLicense" />
    <Chain>
      <MsiPackage Id="MyInstallerInstaller" 
                  SourceFile="$(var.MyInstallerInstaller.TargetPath)" 
                  Compressed="no">
        <!-- TODO - if this is being set correctly, the MSI needs to 
                    interpret it and set up the key-->
        <MsiProperty Name="SetLocalDb" Value="yes"/>
      </MsiPackage>
    </Chain>
  </Bundle>
</Wix>
Run Code Online (Sandbox Code Playgroud)

windows-installer wix wix3.7

9
推荐指数
1
解决办法
1万
查看次数

标签 统计

windows-installer ×1

wix ×1

wix3.7 ×1