应用程序配置错误错误C ++

时间:2009-09-17 17:48:14

标签: c++ winapi visual-c++ native

我是c ++的新手。我使用VS 2008 Professional制作了一个c ++程序。我开始使用为我创建窗口的Win32模板。我在Vista 32上编译了它。我将编译后的exe文件带到了我的旧XP sp2计算机,它告诉我应用程序配置不正确。有什么东西我做错了吗?如何使其与平台无关?

由于

5 个答案:

答案 0 :(得分:2)

尝试安装Microsoft Visual C++ 2008 SP1 Redistributable Package并确保使用应用程序的发布版本。

答案 1 :(得分:1)

确保将WINVER设置为包含WinXP的版本 - 看起来VS 2008的Windows的默认目标版本是Vista(0x0600)。

设置以下预处理器定义:

#define WINVER 0x0501

最好使用项目属性“C / C ++ /预处理程序/预处理程序定义”或cl.exe命令行上的-D选项。也有可能是targetver.h文件具有此设置(取决于最初创建项目的方式)。

有关详细信息,请参阅http://msdn.microsoft.com/en-us/library/aa383745(VS.85).aspx

答案 2 :(得分:0)

您的目标系统缺少该可执行文件所需的运行时文件。

您可以在Microsoft Visual C++ 2008 Redistributable Package (x86)Microsoft Visual C++ 2008 SP1 Redistributable Package (x86)

找到它

答案 3 :(得分:0)

您可以使用Dependency Walker查找目标WinXP系统上缺少哪些组件。然后你应该安装适当的可再发行组件。

答案 4 :(得分:0)

在项目属性中,将"C/C++ -> Code Generation -> Runtime Library"设置为"Multi-threaded (Debug)"。重建后,应用程序将不再依赖msvcr90.dll。但是,应用程序二进制文件会稍大一些。