C VC8 项目可执行文件未在未安装 vc8 的机器中执行
Posted
技术标签:
【中文标题】C VC8 项目可执行文件未在未安装 vc8 的机器中执行【英文标题】:C VC8 project executable is not executing in machine where vc8 is not installed 【发布时间】:2013-03-19 11:33:54 【问题描述】:vc8
C 项目(在 windows 7 中)生成的可执行文件正在所有安装了vc8
的 windows 机器(win xp 和 7)中运行。但它没有在一台没有安装vc8
,但安装了vc6
的win xp 机器上运行。错误信息是System cannot run the executabe
。
这是因为我的 vc8 项目没有生成 vc6 兼容的 exe 吗?请问有什么办法可以解决这个问题。
注意:创建 vc6 项目并添加所有 c 文件是一项复杂的任务,这对我来说会花费很多时间。
【问题讨论】:
你安装C-runtime了吗? 所有机器上的架构都一样吗?你说one win xp machine
不行,你所有的Win 7/Win XP机器都是32位还是64位?
我所有的机器架构都是相同的,都是 32 位的。
【参考方案1】:
您无需安装 Visual Studio 即可在另一台机器上运行应用程序。在发布模式下编译并在目标机器上安装可再发行包。
对于 VC8 (2005):
VS 2005 x86
VS 2005 x64
对于其他版本,只需搜索 c++ 可再发行包
编辑: 如果您在调试模式下编译,则需要运行时库等的调试版本。但是这些是不可再分发的。有关解决方法(用于测试机器,不适用于客户端),请参阅here 了解更多详细信息。
【讨论】:
所以如果我在调试模式下编译它,它将无法工作。是这样吗? 测试参见上面的编辑(基本上相当于将所需的调试 dll 复制到测试机器,与可执行文件在同一文件夹中) ya with release mode exe 正在使用可再发行包。以上是关于C VC8 项目可执行文件未在未安装 vc8 的机器中执行的主要内容,如果未能解决你的问题,请参考以下文章
PCL异常处理:struct id2type_impl<true> //VC8.0 specific bugfeature