在 Windows 7 上崩溃但在 XP 上运行
Posted
技术标签:
【中文标题】在 Windows 7 上崩溃但在 XP 上运行【英文标题】:Crash on Windows 7 but running on XP 【发布时间】:2011-03-21 11:38:31 【问题描述】:我使用 c++、Qt 和 Visual Studio 2010 编写了一个小型应用程序。它在 Windows XP(32 位)上运行,但在 Windows 7(64 位)上启动后立即崩溃。我看到“程序已停止工作...”错误。我必须为 Windows 7 重新编译应用程序吗?是否有可能获得更多信息为什么它会崩溃?
谢谢
【问题讨论】:
可能是任何东西,从缺少 DLL 到代码中的错误。将控制台添加到您的应用程序,以便 Qt 有机会警告您可能出现的错误。如果您使用的是 Visual Studio,您可能可以在调试器中启动您的应用程序。 最初缺少一些 DLL,但我使用依赖遍历器找到了它们。它尝试使用调试器,但这意味着我必须在 Windows 7 上安装 Visual Studio。 不能安装远程调试器吗? 您可以使用 WinDBG 或任何其他调试器进行安装。它不一定是视觉工作室。 @Marco,你能详细说明那个错误吗?如果您指定完整的错误消息内容而不是 ... 【参考方案1】:一般而言,您不必为 Windows 7 重新编译,但这取决于您未提供详细信息的应用程序。
找出问题的最简单方法是在 Windows 7 中调试它或在其中添加更多错误处理,以便它让您知道哪里出了问题,或者哪里出了问题
【讨论】:
【参考方案2】:我同意 martiert 所说的,如果你使用一些外部元素,图像。声音文件,视频文件等...确定文件位置,因为当我展示我的毕业项目时,这对我来说是个问题,我将整个解决方案从一个目录移动到另一个目录,它崩溃了,因为它正在读取一个不找到目录...所以请确保图片、视频、声音等的链接...
【讨论】:
【参考方案3】:您可能需要针对 Windows 7/64 位重新编译。重新编译后它甚至可能无法工作,因为 Windows 7 不是 XP,为 32 位编写的程序可能不适用于 64。通常不需要重新编译,但有时必须重新编译,有时需要重新编译的程序适用于 XP 不适用于 Windows 7。
【讨论】:
@Frank Bollack:我不同意。我的回答清楚地表明,一个人可能无法在 win 7 中运行为 xp 制作的程序。它还指出,一个人可能无法在 64 位操作系统中运行 32 位程序。哪个回答了马可的问题。 对不起,不,它没有回答问题的任何方面。为了使它成为一个有用的答案,您可以说明一些可能导致 OPs 应用程序在 Win7 上崩溃或需要重新编译的情况。以上是关于在 Windows 7 上崩溃但在 XP 上运行的主要内容,如果未能解决你的问题,请参考以下文章
在启用 Aero 的 Windows 7 上运行 .NET 2.0 应用程序窗体应用程序会导致菜单交互使应用程序崩溃
我的程序在 Windows 机器上崩溃,但在 Linux 上运行良好
窗口挂钩在 Windows 7 中不起作用,但在 Windows xp 中不起作用