vs2012
并更新了我的ClickOnce应用程序。更准确地说,第一次打开我依赖的主要C#项目的C++项目
时,我没有更新它,一切正常。 VS 2012
仍然能够看到Visual C++ 2010先决条件。后来,我通过在属性 -> 配置属性 -> 常规
下将平台工具集更改为"Visual Studio 2012(v110)"
来更新了我的项目。
与此同时,我安装了其他软件
,现在我发现我无法再将Visual C++先决条件添加到我的ClickOnce发布项目中。 Visual C++ 2010 Runtime Libraries(x64)
先决条件标有黄色三角形并且缺失。理想情况下,我想更新到Visual C++ 2012 Runtime Libraries x64(和x86)
,但即使缺少此先决条件。
我猜这是因为在文件夹C:\ Program Files(x86)\ Microsoft SDKs \ Windows \ v8.0A \ Bootstrapper \ Packages
中相应的包(vcredist_x64)
为空。我还注意到,在控制面板中安装的程序列表中,我安装了Microsoft Visual C++ 2010 x64
和x86
,分别是可再发行版本和运行时版本(我认为它们是先前与Visual Studio 2010一起安装的),而我缺少Visual C++ 2012文件。因此,我认为Visual C++ 2012没有与Visual Studio 2012一起提供,对吗?我甚至尝试通过下载Visual C++ 2012 Redistributable x64软件包并安装它们,现在它们列在我的已安装程序中(仅有可再发行版本,而没有运行时版本)。
然而,先决条件仍然缺失。我甚至考虑手动复制位于...\v7.0A\Bootstrapper\Packages
文件夹中的Visual C++ 2010引导程序包,并将其手动更改为C++ 2012,但我不知道应该在<MsiProductCheck Property="VCRedistInstalled" Product=?>
下的product.xml
中写什么。似乎可以使用Bootstrapper Manager获取插入此信息的产品GUID,但此程序会抛出许多异常,我不知道该怎么做。作为第二个解决方案,从\\ v7.0A \ Bootstrapper \ Packages \ Bootstrapper \ Packages到v8.0A \ Bootstrapper \ Packages
简单复制Visual C++ 2010的包是否安全?