我有一个 ac# 解决方案,其中包括一个作为 COM 对象访问的 c++ 项目。我在 VS 2010 中构建它,并创建了一个 Windows 安装程序来安装程序。该应用程序是 64 位的,并且在大多数机器上运行良好。但是,我想添加“Visual C++ 2010 Runtime Libraries (x64)”作为先决条件,所以我可以确定系统上提供了所需的一切。
如果我进行更改,每次我尝试在我之前工作的测试系统上安装时,都会被告知需要安装 Visual C++。我单击“安装”按钮,对 UAC 说“是”,然后收到一条错误消息,提示“已在计算机上检测到较新版本的 Microsoft Visual C++ 2010 Redistributable”。然后,我收到一条消息“安装系统组件时发生错误...在成功安装所有系统组件之前,安装程序无法继续。”
Component Visual C++ 2010 Runtime Libraries (x64) has failed to install with the following error message:
"Asia"
The following components failed to install:
- Visual C++ 2010 Runtime Libraries (x64)
如果计算机上已经有较新版本的 C++,我无法安装应用程序,这很奇怪。
还有一点信息:要使 msi 文件与 64 位安装一起使用,我需要使用 Orca 对其进行编辑,转到 Binary -> InstallUtil _> 并将字段更改为 installUtilLib.dll 的 64 位版本。由于先决条件检查发生在 exe 文件中,因此在加载 msi 之前,我认为这不会产生影响,但我认为我会添加它。如果我不进行更改,安装程序会立即崩溃。
如果有人知道我需要做什么才能安装最新版本的 Visual C++,或者接受满足要求的更高版本,我将不胜感激。
目前在 Windows 7 x64 系统上测试。