我有一个 C++ 控制台应用程序,我想使用 vs2008 安装项目进行部署。当我创建安装项目并从我的控制台应用程序添加输出时,安装项目检测到它需要 MSVCP90.dll 和 MSVCR90.dll。当我构建项目时,这两个 dll 按预期包含在 .msi 文件中。
当我下载并启动安装程序时,一切都按预期进行,控制台应用程序和 dll 被解压到本地计算机上的正确目录中。
当我尝试运行应用程序时,出现以下错误:
Error 1721. There is a problem with
this Windows Installer package. A
program required for this install to
complete could not be run. Contact
your support personnel or package
vendor.
我试过使用/MT 和/MD 编译应用程序,但两者均无效。
当我针对该应用程序运行依赖项 walker 时,它报告说它按预期需要 MSVCP90.dll 和 MSVCR90.dll。
最后,如果我将安装程序设置为需要 Visual C++ 运行时库,它会下载它们并且一切正常。
显然,我想避免下载 CRT 库。
感谢您的帮助, 乔恩
最佳答案
查看 this example关于如何添加适当的合并模块并将它们与您的设置一起部署到您的目标机器。
关于c++ - vs 2008 部署项目不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1066755/