0

我在不同的 Windows 系统上运行在 Qt 5.3 中创建的 .exe 文件时遇到问题。我已经包含了所有的 .dll 文件。问题是,在支持显卡的最新系统上,应用程序运行没有任何问题,但在旧系统上,它只会出现黑屏。

我怀疑这与系统的 openGL 支持有关。

有没有一种方法可以确保应用程序在所有系统上都没有任何故障运行?或者是否可以在不需要 oprnGL 支持的情况下创建应用程序?

希望听到一些解决方案。

提前致谢。

编辑

以下是我运行代码时遇到的错误

getProcAddress: Unable to resolve 'glBindFramebuffer'
getProcAddress: Unable to resolve 'glBindFramebufferOES'
getProcAddress: Unable to resolve 'glBindFramebufferARB'

这是屏幕外观的屏幕截图 截屏

注意: 请注意,当我在具有更新图形的新系统上运行 .exe 时,屏幕看起来很完美。

4

1 回答 1

0

您是否在 Qt 项目中包含任何 OpenGL 头文件?

因为如果你这样做了,那么显然每个系统都会依赖 OpenGL,如果其中一个系统不支持这一点,那么你要么需要降低正在使用的 GL 的最低版本,要么完全删除这些头文件。还值得注意的是,无论你多么努力——你永远不会得到相同版本的 OpenGL 来在每个硬件上运行而无需更改某些内容。

您是否添加了 QtOpenGL 模块?

从听起来的情况来看,您没有在应用程序中使用 OpenGL。如果这是真的,那么你应该从你的.pro文件中删除这个模块,它应该删除依赖项。

我希望这回答了你的问题。如果没有,您能否提供更多细节,因为您的问题有点模糊。

于 2014-08-18T13:31:40.530 回答