【问题标题】:WIX merge c++ runtimeWIX 合并 C++ 运行时
【发布时间】:2018-07-19 11:05:11
【问题描述】:

我已经为 vs 2015 crt 合并了 msm:

<DirectoryRef Id="TARGETDIR" >
<Merge Id = "Microsoft_VC140_CRT_x64.msm" FileCompression = "yes" Language = "1033" SourceFile = "..\\..\\..\\..\\..\\..\\..\\external\\tools\\systemsetups\\merge_modules\\Microsoft_VC140_CRT_x64.msm" DiskId = "1" />"
</DirectoryRef>
<Feature>
<Feature Id="Complete" Title="Complete" Absent="allow" Level="1">
...
<MergeRef Id="Microsoft_VC140_CRT_x64.msm"/>
...
</Feature> 

但我仍然收到:

---------------------------
MyApp.exe - System Error
---------------------------
The program can't start because mfc140u.dll is missing from your computer. Try reinstalling the program to fix this problem. 
---------------------------
OK   
---------------------------

任何想法如何正确合并它?

【问题讨论】:

    标签: wix windows-installer visual-c++-runtime


    【解决方案1】:

    Microsoft 似乎建议您使用其中一种 redist 可执行文件(vcredist_x86.exevcredist_x64.exeinstead of the merge modules(见底部),因为 2015 版本的运行时是 more complicated than before,合并模块基本上是不足:“Universal CRT 不会有合并模块”。

    Bob Arnson 在此答案中对此进行了充分解释:Redistributables for deploying C++ exe developed with Visual Studio 2015 on Windows 7必读链接 - 这就是答案,我只是添加了这个以添加一些更多链接)。

    另外,我面前没有这个 Linux 机器上的合并模块列表,但也许你需要一个 x86 版本 - 你正在安装 x64 版本?只是检查一下 - 这些比特问题让我们都快疯了。


    一些链接

    【讨论】:

    • 我发现问题:Microsoft_VC110_MFC_x64.msm :)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-07-05
    • 2017-11-04
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多