- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个使用 Visual Studio 2015 开发的 c++ 应用程序,以及一个 Wix 安装程序和一个 Burn Bootstrap 。该应用程序的早期版本能够使用 Visual Studio 合并模块来安装必要的先决条件,但在使用 Visual Studio 2015 时,这似乎不是一个选项(请参阅 Redistributables for deploying C++ exe developed with Visual Studio 2015 on Windows 7 )。
按照该链接中的建议,我们已经开始使用带有 vital="yes"的 ExePackage 安装带有 Burn 的 vcredist。这通常效果很好 - 我们有几个客户由于 vcredist 的各种问题而安装失败。直到最近,这些都是会导致安装失败的错误。
在过去的几天里,我们收到了几份由于安装了更新版本的可再发行组件而导致安装程序失败的报告:vcredist 失败,错误代码为 0x80070666,这导致我们的 Bootstrap 失败。
我的问题是:
最佳答案
SystemFolder
的事实而变得复杂。和 System64Folder
相对于 Windows Installer 中的类似变量,它们是相反的。搜索 VC14 的示例:<!-- Detect existing version of VC ++ 2015 x64 libraries -->
<util:FileSearch Id="GetVC14X64Exists" Condition="VersionNT64" Variable="vc14x64Exists" Path="[SystemFolder]vcruntime140.dll" Result="exists"/>
<util:FileSearch Id="GetVC14X64Version" Condition="VersionNT64" Variable="vc14x64Version" Path="[SystemFolder]vcruntime140.dll" Result="version"/>
<!-- Detect existing version of VC ++ 2015 x86 libraries -->
<util:FileSearch Id="GetVC14X86onX64Exists" Condition="VersionNT64" Variable="vc14x86Exists" Path="[System64Folder]vcruntime140.dll" Result="exists"/>
<util:FileSearch Id="GetVC14X86onX64Version" Condition="VersionNT64" Variable="vc14x86Version" Path="[System64Folder]vcruntime140.dll" Result="version"/>
<util:FileSearch Id="GetVC14X86onX86Exists" Condition="NOT VersionNT64" Variable="vc14x86Exists" Path="[SystemFolder]vcruntime140.dll" Result="exists"/>
<util:FileSearch Id="GetVC14X86onX86Version" Condition="NOT VersionNT64" Variable="vc14x86Version" Path="[SystemFolder]vcruntime140.dll" Result="version"/>
vc14x64Exists
和 vc14x64Version
然后可以在 DetectCondition
中使用确定是否安装了 64 位版本的 VC14:DetectCondition="vc14x64Exists AND vc14x64Version >= v14.0.nnnnn"
DetectCondition
对于 VC14 的 32 位版本是:DetectCondition="vc14x86Exists AND vc14x86Version >= v14.0.nnnnn"
nnnnn
使用您在安装程序中包含的 vcredist 的内部版本号。<ExitCode Value="1638" Behavior="success"/>
告诉 Burn 忽略已安装的错误代码 0x80070666。 .请注意,1638 = 0x666。例如:<!-- Microsoft Visual C++ 2015 x86 libraries -->
<PackageGroup Id="VC14RedistX86">
<ExePackage
Cache="no"
Compressed="yes"
PerMachine="yes"
Permanent="yes"
Vital="yes"
Name="Redist\vcredist14_x86.exe"
SourceFile="$(var.RedistPath)\VC14\vcredist_23918_x86.exe"
InstallCommand="/install /quiet /norestart">
<!-- -->
<ExitCode Value="3010" Behavior="forceReboot"/>
<!-- Ignore "Newer version installed" error -->
<ExitCode Value="1638" Behavior="success"/>
</ExePackage>
</PackageGroup>
<ExitCode Value="1638" Behavior="success"/>
如果已经安装了 vcredist 的 future 更新版本,则指示告诉 burn 不要抛出错误。
关于visual-studio-2015 - Wix Burn vcredist,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37396773/
我有一个刻录安装,用户可以选择安装三个选项中的哪一个 - 每个选项都直接与链中的三个 MsiPackages 之一相关,例如: 一切都很好。但是,当我下次运行 msi 时,我只想
有没有办法跳过链中的一个包?我看过“InstallCondition”并有这样的代码。 但我不想在 InstallConditi
我想知道如何将复选框值存储在变量中?我正在使用带有自定义 RtfTheme 的 WiX Burn。 例如: RtfTheme.xml Please select this box Bundle.wxs
所以我有一个非常简单的刻录安装程序,主要包括 .net 升级,或者偶尔包括我们的应用程序需要与之通信的硬件的驱动程序包。 我们创建的 MSI 支持升级或降级。
我正在尝试为 WiX 创建自定义 UI和燃烧。我遵循了我发现的一些指南,到目前为止,我有一个项目具有以下内容,它继承自 BootstrapperApplication。 namespace MyBA
有没有办法在安装程序中更改那张红色的 CD 图片? 这是 Burn 项目的代码: 谢谢! 最佳答案 是的,您可以使用自定义
我正在开发一个 Burn Bootstrap 应用程序,其目的是安装许多 MSI 包。我想测试其中一个软件包安装失败的场景。有没有办法创建一个 MSI 包,当您尝试安装它时总是失败? 最佳答案 是的,
我正在使用 exePackage 属性下载一个 exe 包 - 实际上是来自微软的 VSTO 运行时。 它无法获取包。 我相信这是将其添加到 CHAIN 的正确方法 =v10.0.40303)
我有一个自定义的刻录 bootstrap 应用程序,本地化为德语 (BurnUI_de-DE.wxl) 和英语 (BURNUI_en-US.wxl)。目前刻录自动以英文启动。我不知道如何在运行时更改
我有一个 WiX Burn使用 ManagedBootstrapperApplicationHost 的自定义安装程序。安装必备 Microsoft Windows Installer 之一后4.5
我创建了一个 WIX Burn Bundle。在捆绑包中,我安装了 .Net 4(如果未安装),然后再安装 2 个 .msi 文件。 1 是第三部分 msi,另一个是我使用 WIX 为我的软件创建的
有可能以某种方式拆开捆包吗?我需要确保捆绑包中的所有软件包均已正确签名... TIA 最佳答案 Dark.exe反编译包;使用-x提取位。 关于wix - 打开WIX Burn bundle ,我们在
假设这样定义 #define myDate [NSDate date] 每次我使用它时,它都会给我当前日期,没关系。 我想要的是存储代码编译的日期。我可以使用定义或使用任何其他方式来做到这一点吗? 我
我有一个 UIImageView 我正在尝试为类似 Ken Burns 的平移/缩放设置动画。我想开始以脸部为中心(具体来说,比如说,人的 Nose 末端)并缩小到图像的完整尺寸。代码是这样的: im
我正在构建一个将用作信息监视器的非公开网络应用程序。因此,它将在一台液晶电视显示屏上全天候 24/7 运行。 因为这可能会在 LCD 上产生“烙印颜色”错误,所以我正在寻找可以防止/减少此问题的 Ja
通常在Bundle.wxs 文件中设置EXE 版本。是否可以在编写安装程序后端引擎逻辑的 Bootstrapper Application 项目中获取此版本?我使用 WPF 创建了一个自定义 UI。我
我有一个由供应商提供给我的第三方 MSI。然而,MSI 不是独立的,它需要多个支持文件(dll、配置文件、设备驱动程序...)才能完成安装。我尝试在 MSI 目录中不存在这些文件的情况下进行安装,并且
我已经使用 WiX/Burn 编写了一个自定义托管 Bootstrap 应用程序,现在我正在尝试扩展它以处理 ExecuteFilesInUse 事件。我已经成功触发了事件并完成了我所得到的转储,这让
我为我们的一款产品创建了一个 WIX msi,效果非常好。该产品是一个 Word 插件,在升级/卸载时,msi 会自动检查 Word 是否打开(即我的程序集当前被锁定在执行中),如果是,则会显示“正在
我是Wix Burn Bootstrapper的新手,请原谅我的无知。我有一个要求,我需要使用Burn Bootstrapper安装必备组件。 前提条件是setup.exe(第三方),它依赖于文件和文
我是一名优秀的程序员,十分优秀!