问题标签 [merge-module]
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.
merge-module - VC 合并模块未更新
不久前我发布了一个问题:
https://stackoverflow.com/questions/16123872/visual-c-runtime-8-0-50727-6910-merge-module
我有一个问题,我可以找到合并模块的特定版本。
我已经尝试重新安装 Visual Studio 2005 和 2008 的 SP1,并且两个运行时(8 和 9)的合并模块在 (C:\Program Files (x86)\Common Files\Merge Modules) 中没有正确更新。唯一的 VC 合并模块是原来的 8 和 9 模块。
我正在运行 Windows 8 Enterprise x64。有谁知道 VC8/9 合并模块没有通过 Windows 8 上的 Visual Studio 更新过程正确更新的任何问题?
wix - 如何在 WiX 中执行仅在安装或卸载时执行的自定义操作?
我有两个自定义操作,其中一个我想在安装我的产品时执行,另一个在卸载它时执行。
我的自定义操作当前是在“InstallFinalize”之后从合并模块调用的,但是安装和卸载都会发生这种情况。我尝试添加“未安装且未升级产品代码”条件,但这给了我一个错误:
错误 2762。无法写入脚本记录。交易未开始。
我也尝试过附加到其他操作(例如,UnpublishComponents),但我找不到任何唯一可以安装或卸载的操作。
我该如何解决这个问题?
.net - 无法在延迟的自定义操作中获取安装位置属性
我在阅读链接后编写了这段代码:http: //blogs.technet.com/b/alexshev/archive/2008/03/25/property-does-not-exist-or-empty-when-accessed-from-延迟自定义action.aspx
代替InstallDir - PRIMARYFOLDER
,我尝试了 - INSTALLLOCATION、InstallDir、TargetDir,但我无法获取为 ProgramFiles(x86) 下的应用程序指定的安装文件夹。
的值SourceDir
作为 MSI 文件运行时所在位置的正确值出现。
windows-installer - Installshield MSI - 卸载补丁中的合并模块
InstallShield 和 BasicMSI 的新功能。
我们有一个包含合并模块(许可软件)的基本安装 我们现在发布一个补丁来更新我们的一些软件,包括一个新版本的许可软件,它不再通过合并模块提供,但现在是一个先决条件。
我可以获得正确安装的新先决条件,但是我不知道如何卸载通过合并模块安装的先前版本。新版本的许可软件安装到新的文件位置,因此它不会“覆盖”旧版本。
任何建议/想法将不胜感激。
干杯
windows-installer - 如何使用安装屏蔽应用程序将合并模块 (.msm) 添加到安装脚本?
我正在使用 Install Shield,我知道我们可以使用Redistributables
菜单项添加合并模块,如果它是Basic MSI Project
.
但如果是,我看不到Redistributables
菜单项InstallScript Project
有人可以帮我弄清楚如何使用 Install Shield 将合并模块添加到 InstallScript 项目中吗?
visual-studio-2012 - Windows XP下VC 2012合并模块
我们有一个适用于本机 Windows 的 VC++ 2012 应用程序(经典胖应用程序)我们还有一个基于 NSIS 的安装程序。
我想将 VC110_CRT 合并模块添加到安装程序,但合并模块无法安装在 Windows XP 上。错误消息是。
Windows Installer 服务无法安装此安装包。您必须安装包含较新版本的 Windows Installer 服务的 Windows 服务包。
是的,它是完全更新的 Windows XP(SP 3 + 所有更新)。据我了解,我们至少需要 Windows Vista 来安装更新。
我的问题:
- 有没有办法转换 Microsoft_VC110_CRT_x86.msm 模块,所以它可以在 Windows xp 下使用
我知道我可以使用 vs_2012_redist,但它有 ~6,5 MB,而不是合并模块大小的 ~0,8。我只需要 CRT,因为该应用程序使用 QT 而没有 MFC/ATL/....
c# - WiX 为我的 C# 应用程序创建一个简单的安装程序和合并模块
我是软件开发的新手(虽然不是编程)。我正在交付我的第一个商业版本应用程序,我需要一个单击安装程序包。我研究了许多解决方案——我用 C# 编写了自己的代码(它基本上只是将我的三个文件夹抓取到各自的目的地),但是在捆绑一些 IO 库时遇到了一些问题。由于我使用的是 Visual Studio Express 2012,因此无法使用 InstallShield 模块。我找到了 WiX,虽然它有一些在线教程,但这项服务的学习曲线非常高——可以肯定地说我很困惑。
我有三个文件夹:
- myApplication2013 文件夹
- myApplication2014 文件夹
- System.Data.SQLite.dll
我的 C# 代码的逻辑如下:
目标位置将由 .msi 指定,至于目标位置:
- myApplication-2013 是:
C:\\ProgramData\\Autodesk\\REVIT\\Addins\\2013
- myApplication-2014 是:
C:\\ProgramData\\Autodesk\\REVIT\\Addins\\2014
- System.Data.SQLite.dll 是:
C:\\Windows\\Microsoft.NET\\assembly\\GAC_64
安装程序真正做的是获取源文件夹/文件(来自上面的 3 个)并将它们复制到目标位置。这也是我的 C# 脚本所做的(尽管它使用 IO 库)。WiX 需要哪些步骤?我感到很困惑。
我还需要创建一个合并模块。
谢谢你。
c# - Visual Studio 2013 中的 MSM 合并模块
有人可以告诉我在哪里可以找到创建 MSM 文件的资源吗?虽然我能够使用 InstallShield 创建 MSI 文件,但从下面的链接和我的 Visual Studio 2013 版本的屏幕截图来看,Visual Studio 似乎不再支持合并模块项目 - http://msdn.microsoft.com/en -us/library/z6z02ts5(v=vs.80).aspx
创建一个新的合并模块项目:
- 在文件菜单上,指向添加,然后单击新建项目。
- 在生成的添加新项目对话框中,在项目类型窗格中,打开其他项目类型节点并选择设置和部署项目。
- 在模板窗格中,选择合并模块项目。
com - WIX - 在卸载期间取消注册 COM 组件
我有几个在安装过程中注册的 COM 组件。这些 COM 组件是我的 WIX 项目中包含的合并模块的一部分。我使用以下代码进行注册
组件已成功注册。但是,在卸载过程中,这些 COM 组件并未取消注册。在卸载前,当 SharedDLL Count 为 1 时,如何确保这些组件未注册?
wix - 在合并模块中使用主设置中的目录
我需要将合并模块的内容安装到主设置中设置的特殊(子)文件夹中。目前,我们所有的设置都包含一个具有特殊名称的目录(例如“PROGDIR”),并且我们使用 InstallShield 的直接编辑器,因此为合并模块中的目录提供相同的名称。在合并过程中,合并模块中的目录被覆盖/丢弃(称之为魔法,称之为黑客,它很丑......)。
此解决方案非常脆弱,因为每当您在 InstallShield 中触摸合并模块并摆弄组件或使用“文件和文件夹”选项卡时,IS 会将合并模块 guid 附加到目录标识符并且它都停止工作(PROGDIR -> PROGDIR. 1234ABC...)
我现在想将我们的合并模块逐步移动到 WiX。主要设置还不能遵循,也不需要更改。
我可以阻止 WiX 自动将 guid 添加到目录标识符以使用与以前相同的 hack 吗?或者是否有更好、更清洁的解决方案而无需更改主要设置?
我已经研究了 Substitution 元素,但无法理解它是如何工作的。如果这能以某种方式有所帮助,我会很感激一个例子......