繁体   English   中英

WiX在安装过程中将msiexec安装日志保存为捆绑软件的一部分

[英]WiX save msiexec install log during installation as part of a bundle

我正在运行Visual Studio 2010和WiX 3.7。

我已经成功创建了一个WiX项目,该项目可分发我的XLL,并具有自定义操作以向Excel注册XLL。 我们计划通过.NET网页为用户分发XLL,该网页带有用户单击的按钮链接。

我一直在寻找有关如何进行我的WiX项目并将安装日志文件(使用MSIEXEC参数)保存到程序文件下的company目录中的示例。 我需要创建一个引导程序项目来执行此操作,以便可以在安装过程中分发文件,这是否正确?

如果是这样,我有以下问题:

  1. 如何在bootstrapper项目中指定输出目录?
  2. 由于我的WiX项目产生了MSI输出,是否可以在带有ExePackage(而不是MsiPackage)的引导程序项目中使用Chain? 我问这个问题是因为这似乎是拥有IntallCommand的唯一方法(否则我将使用MsiPackage)。
  3. InstallCommand的参数是否与从命令行运行msiexec的参数相同?
  4. 如果软件已卸载,是否会删除日志文件?
  5. 我会在引导程序项目中引用MSI WiX项目吗? 如果是这样,我是否可以为MSI项目使用变量(即,如果MSI项目名称为MSIPROJ,则引用变量将为($ var.MSIPROJ)?
  6. 我可以像在常规WiX安装项目中一样指定输出目录吗?

如果引导程序项目不是解决方案,那么我将如何实现目标?

编辑1:

我能够创建一个引导程序项目,该项目创建一个安装日志(默认情况下在temp目录中)。 这带有一个全新的对话框。

我对此的疑问如下:

  1. 引导程序项目生成的对话框可以镜像MSI项目(即)中的对话框设置吗?
  2. 是否可以像在WiX设置项目中一样指定资源(即EULA.rtf,Icon.ico,Dialog.jpg和Banner.jpg)?

     <?xml version="1.0" encoding="UTF-8"?> <Wix xmlns="http://schemas.microsoft.com/wix/2006/wi"> <Bundle Name="Name" Version="1.0.0.0" Manufacturer="Company" DisableModify="yes" UpgradeCode="71515514-5c35-4a2f-a782-fe91bf2a5943" Compressed="yes"> <BootstrapperApplicationRef Id="WixStandardBootstrapperApplication.RtfLicense" /> <Chain> <PackageGroupRef Id="InstallerPackage"/> </Chain> </Bundle> <Fragment> <PackageGroup Id="InstallerPackage"> <MsiPackage SourceFile="$(var.ExcelAddInDeploy.TargetPath)" Compressed="yes" EnableFeatureSelection="no" Vital="yes" DisplayInternalUI="yes"> <MsiProperty Name="MSC" Value="[MSC]" /> </MsiPackage> </PackageGroup> </Fragment> </Wix> 

谢谢,

背风处

为了回答我的问题,下面给出了抑制EULA并显示正确图像的方法。

<?xml version="1.0" encoding="UTF-8"?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
<Bundle Name="Name" 
      Version="1.0.0.0" 
      Manufacturer="Company" 
      DisableModify="yes"
      UpgradeCode="insert GUID here"
      Compressed="yes">
<BootstrapperApplicationRef Id="WixStandardBootstrapperApplication.HyperlinkLicense" >
  <bal:WixStandardBootstrapperApplication
    SuppressOptionsUI="yes"
    LogoFile="C:\Path\Logo.jpg"
    LicenseUrl=""
    xmlns:bal="http://schemas.microsoft.com/wix/BalExtension" />
</BootstrapperApplicationRef>

    <Chain>
      <PackageGroupRef Id="InstallerPackage"/>
    </Chain>
</Bundle>
  <Fragment>
    <PackageGroup Id="InstallerPackage">
      <MsiPackage SourceFile="$(var.ExcelAddInDeploy.TargetPath)" Compressed="yes" EnableFeatureSelection="no" Vital="yes" DisplayInternalUI="yes">
        <MsiProperty Name="MSC" Value="[MSC]" />
      </MsiPackage>
    </PackageGroup>
  </Fragment>
</Wix>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM