问题标签 [votive]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
visual-studio - 如何在 WiX 安装程序项目中引用自定义 WiX 扩展项目?
我的项目中有一个 WiX 安装程序项目和一个带有自定义 WiX 预处理器扩展的 DLL 项目。问题是 WiX Visual Studio 扩展只能将 WiX 扩展引用为 DLL,而不是 Visual Studio 项目。这个限制有什么好的解决方法,以便我可以将我的自定义扩展项目集成到构建过程中?
我已经尝试通过 Post-build 事件将扩展项目的输出复制到 WiX MSI 项目的子目录中,但是由于文件锁定问题,这会引起很大的麻烦……此外,这是一种非常骇人听闻的做法这个。我不敢相信最广泛使用的安装工具包之一不支持基本的东西!?
build - 如何将包含多个文件的目录添加到 wix 项目输出文件夹?
我正在尝试使用可用于不同配置的 WiX Toolset v3.7.1224.0 创建安装程序。我已经有一个在 VS2010 中使用 Votive 构建的工作安装程序。安装程序在 WixSqlExtension 的帮助下创建一个 MSSQL 数据库。
创建数据库并指定所有表后,我希望安装程序使用一些值初始化表。目前,这些值作为 SqlString 元素编译到 msi 中。我想将这些字符串外部化到配置文件中。配置文件将使用自定义操作中的 InsertTemporary() 方法和 SOURCEDIR 属性临时存储插入到 SqlString 表中的字符串。我还没有决定配置文件的格式,但是它将是一个xml文件或一个简单的文本文件,其中每个sql字符串都在自己的行中,或者分别在自己的元素中,所以我可以解析文件并为文件中的每个条目添加一个临时记录。
我想将此配置文件集成到我的项目结构中。它应该被复制到项目的输出目录中,但不应安装在最终用户的计算机上。我认为我可以通过将文件添加到我的项目中,然后在 Votive 中更改文件的高级属性来完成此操作。我将“构建操作”指定为“内容”,将“复制到输出目录”指定为“始终”。但是当我构建项目时,该文件不存在于项目的输出目录中。充其量我还希望能够将包含多个配置文件的目录添加到项目输出目录中。
有什么办法可以用 Votive 和 Wix 实现这一目标吗?这可能与 MSBuild 吗?我将如何修改 .wixproj 文件来创建目录和文件?
c# - WiX Votive 托管自定义操作不能被同一解决方案中的其他托管代码引用?
问题:
public static
是否可以从同一解决方案中的其他库引用Votive 为创建 C# 托管自定义操作而生成的 CustomAction 类中保存的方法?
在尝试为 CA 创建测试台时,我无法在 C# 库中为 C# 自定义操作获取类和方法的引用。
...
尽管我添加了对 or 的引用,但InstallCA
我无法为TestInstaller.InstallCA
or添加 using 语句InstallCA
,并且编译时错误仅建议添加引用,我已经这样做了。
这与 Votive 以某种方式保护其 DLL 有关吗?
wix - 如何维护 WIX 设置库中的文件引用完整性
我正在使用 Wix Toolset 3.8 Visual Studio 插件。我创建了一个 WIX 设置库,它封装了一些将由各种服务部署项目使用的通用组件。此库包含对需要打包到每个部署中的多个解决方案文件的引用。
这些依赖项以几种不同的方式在我的 wix 库片段中使用。例如:
无论我将文件作为链接添加到项目中还是将它们复制到项目目录中,以及我是在项目目录中引用它们还是使用它们原始位置的相对路径,WIX 设置库都构建得很好。当我将片段包含在我的 WIX 设置项目中以进行服务部署时,问题就出现了。
安装项目在文件夹结构中的相对深度不同,因此相对路径不会指向与从 WIX 库引用时相同的位置。当我从 WIX 库中引用操作或功能时,我收到错误,例如The system cannot fine the file '.\Dependency1.dll'
XML 正在按原样读取并从安装项目位置而不是库项目位置引用,因此相对目录是错误的。我可以将 WIX 库中的相对路径设置为使用它的安装项目应该使用的路径,或者我也可以将解决方案文件复制到安装项目目录中,但是当然,这完全违背了使用通用 WIX 库。还有其他服务部署项目需要使用这个库。
所以问题是,我如何引用 WIX 库中的解决方案文件,以供使用它的安装项目使用,而不管安装项目所在的目录如何?
wix - VS 2013 Express 中缺少 Wix 3.8 项目模板
我已经安装了 WIX 3.8,但在我的 VS 中仍然找不到 WIX 模板。我也没有C:\Program Files (x86)\Microsoft Visual Studio 12.0\Common7\IDE\Extensions\Microsoft\WiX
文件夹。如何在 VS 2013 Express 中启用 Wix?
build - 在 WiX 中,如何在片段中创建自定义表?
我正在使用 Visual Studio 'Votive' 集成开发 WiX 安装程序。
我正在使用创建一个简单的自定义表,<CustomTable>
并且我想将它放在一个单独的文件中<Fragment>
。
问题是,WiX/Votive 不包含该片段,因为没有任何引用它。没有<CustomTableRef>
. <Fragment>
但是,它是 的有效父级<CustomTable>
,因此必须有一种方法可以让 WiX 包含它。
有什么建议么?如何在片段中引用自定义表?
visual-studio - 如何“强制 WiX .exe 在进程外运行”
Visual Studio 的WiX插件中存在一个错误,其中引用的 DLL 上的文件锁定未正确释放。因此,每次要重新编译自定义扩展 DLL 或它引用的任何程序集时,都必须重新启动 Visual Studio。
这是一个已知的错误,但问题已关闭,因为似乎有解决方案/解决方法:
您可以强制 WiX .exe 在进程外运行以避免 MSBuild 的锁定。
我不明白如何实现这一点。我检查了...
- 我的 WiX 设置项目的属性
- 扩展程序集的属性(C# 类库)
- 所有 Visual Studio 设置
- candle.exe 的可用命令行参数
...但没有找到任何东西。我错过了什么?如何应用此解决方法?
我正在使用 WiX 3.10 和 Visual Studio 2013。
visual-studio - Votive (Wix) 的 Visual Studio 扩展证书验证失败
安装 Votive,Wix 的扩展 - Windows Installer 对于 Votive 2017 和 Votive 2019 Visual Studio 扩展均失败。原因是证书验证错误。如何在不出现证书验证错误的情况下更新根证书并安装 Visual Studio 扩展?