最新的 Visual Studio C++ Redistributable 位于此处。但问题是我想包含它来安装屏蔽安装,它需要合并模块而不是 exe 文件。
如何找到相应的合并模块(msm 文件)?有没有办法下载它以某种方式安装屏蔽?
最新的 Visual Studio C++ Redistributable 位于此处。但问题是我想包含它来安装屏蔽安装,它需要合并模块而不是 exe 文件。
如何找到相应的合并模块(msm 文件)?有没有办法下载它以某种方式安装屏蔽?
Visual C++ 运行时依赖于通用 CRT,您不能通过合并模块在最终用户的计算机上安装通用 CRT(Windows XP 除外)。合并模块在 Vista/7/8/8.1/10 上完全没有任何作用。
请参阅 Daniel Griffing对此 Visual Studio 错误报告的评论。
三种解决方案:
每个使用动态 CRT 并使用 Windows 10 SDK(Visual Studio 2015、2017 或 2019)构建的程序都需要 KB2999226 或 UCRT 文件的副本才能在 Windows <10 上运行,否则将失败丢失api-ms-win-crt-runtime-l1-1-0-dll
. 这些程序根本不需要在 Windows 10 上运行。
由于知识库文章中的下载链接已失效,您可能希望将您的用户指向:
Windows 7
32 位:https
://www.microsoft.com/en-us/download/details.aspx?id=49077
64 位:https ://www.microsoft.com/en-us/download/details .aspx?id=49093
Windows 8
32 位:https
://www.microsoft.com/en-us/download/details.aspx?id=49067
64 位:https ://www.microsoft.com/en-us/download/details .aspx?id=49082
Windows 8.1
32 位:https
://www.microsoft.com/en-us/download/details.aspx?id=49071
64 位:https ://www.microsoft.com/en-us/download/details .aspx?id=49081
总结:使用 Installshield通过“套件项目”(使用启动器安装的设置链)安装VC++ 运行时的可执行文件,或者在安装了 Visual Studio 的系统上找到磁盘上的合并模块,并将相关项目复制到 Installshield 可再发行文件夹。
记住要好好测试,并在安装后执行Windows 更新以检查是否有待处理的安全修复程序(您的合并模块可能不是最新的)。如果您发现问题,请尝试更新 Visual Studio - 或手动安装最新的 SDK 并查找更新版本的合并模块。
Redistributables View没有显示任何要下载的内容?另外请阅读这篇文章,了解为什么应该使用可执行文件而不是合并模块。高端的、较新版本的 Installshield 允许您创建套件项目(有关详细信息,请参见链接,这里是屏幕截图):
您还应该在磁盘上有合并模块,只需进行搜索(如果您在该框中安装了 Visual Studio)。类似的东西:C:\Program Files (x86)\Microsoft Visual Studio\2017\[EditionHere]\VC\Redist\MSVC\[VersionHere]\MergeModules
。
但是,上面提到的套件项目应该允许您运行可执行版本,但如果您使用的是较旧的 Installshield 版本,则不允许。