【Qt5 for VS】关于出现 Qt platform plugin "windows" 运行错误的解决方案

本文介绍了如何解决在其他机器上运行使用VS编译的Qt5程序时出现的错误。主要涉及正确部署所需的dll文件,包括qwindows.dll和libEGL.dll的位置配置。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、问题描述:

在 VS 中使用 Qt5 发布 Release 版程序,在其他机器上运行出现如下错误:



二、解决方法:

出现此错误说明你的 exe 执行文件找不到 windows 这个库,那么为了找到这个库,普遍的理解就是你要把这个库文件拷贝到 exe 执行文件所在目录,但是此库文件比较特殊,默认情况下,需要放在 ./platforms/ 下,作为 Qt5 插件使用


1、首先需要说明的是,x86 版的 Qt5 只能编译出 Win32 版的程序,x64 版的 Qt5 只能编译出 x64 版的程序,不然 VS 会报如下错误:


并且,如果你是 x64 版的程序,你只能在 64 位操作系统上使用,xp 会报错:“无法识别的 Win32 程序”


2、运行 VS 编译出的 Qt5 程序,需要两种类型的 dll:

一种是 Qt5 自己的 dll,在 Qt5 安装目录下 bin 文件夹下可以找到,运行时缺少哪个就去把哪个 dll 复制到 exe 执行文件所在目录

另一种是运行 VS 编译的 Qt5 程序需要的插件 dll,在 Qt5 安装目录下 plugins/platforms 中,上述错误就是因为没找到这个 qwindows.dll 这个库导致的,但是默认情况下,你不应该把这个 dll 复制到 exe 执行文件所在目录,而是应该放在该目录下的 platforms/ 下(不是 plugins/platforms/ !!)


3、即便你有了这个 qwindows.dll 文件,你也会报上面的错误,确认你的 exe 执行文件所在目录下有 libEGL.dll 这个库,没有的可以去 Qt5 安装目录下 bin 文件夹下复制过来,会有惊喜……我也不太了解为什么,但问题确实解决了……

评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值