使用Visual Studio,我构建了一个以32位运行的C ++应用程序。它将部署到32位和64位Windows服务器。它不会在64位模式下运行(而是在WoW下运行)。
我是否应该同时包含32位和64位Visual C ++可再发行组件,并在64位Windows上在32位Windows和64位上安装32位,还是仅仅安装32位可再发行组件?
答案 0 :(得分:3)
安装32位可再发行组件就足够了。
答案 1 :(得分:2)
这不是答案。它应该只是一个评论,但因为我不具备所需的声誉......:
我只想警告人们反对Ruel提供的信息。不,64位Visual C ++可再发行软件包也不包含32位DLL。
我甚至测试了他的理论。我试图运行一个需要Visual C ++ 2010 32位可再发行组件的应用程序,它促使我需要它。然后我安装了64位,它仍然提示它需要32位版本的Visual C ++ 2010.安装32位后,它可以工作。
为什么人们提出理论并提供答案胜过我。或者也许他也被鼓励了#34;通过声誉系统不仅给予多余的信息,还给予虚假信息。或者他可能只是将C ++与DirectX 9可再发行组件混淆(确实安装了32位和64位DLL)。
答案 2 :(得分:1)
两者都是微软的产品,但不要让这个愚弄你。
您的C ++应用程序创建一个32位EXE,链接到32位DLL。碰巧,这些DLL中的一个或两个是Microsoft CRT DLL,但操作系统仍然使用相同的规则。因此,您不需要64位DLL。
答案 3 :(得分:1)
使用/ MT选项编译它,VC ++运行时库将被编译到您的exe中,因此您不必担心分发它。
项目>属性>配置属性> C / C ++>代码生成>运行时库>多线程(/ MT)。
答案 4 :(得分:-1)
64位Visual C ++可再发行组件包括32位Visual C ++可再发行组件和64位Visual C ++可再发行组件。