无法find或加载Qt平台插件“窗口”

首先,为了防止重复的报告,我尝试了多种解决scheme, 在这里 , 在这里 , 这里和这里 。

我在Visual Studio 2012中使用Qt 5.5.1,并在Windows 10 x64(不使用Qt Creator)上开发我的应用程序。 应用程序在发布模式下编译。

其实,我的应用程序正在我的电脑上工作 ,没有任何问题,我需要在我的目录中唯一的库是:

Qt5Core.dll Qt5Gui.dll Qt5WinExtras.dll Qt5Widgets.dll Qt5Network.dll msvcp110.dll msvcr110.dll 

现在,当我试图启动我的应用程序全新安装的Windows 7 x86时,我收到以下错误信息:

此应用程序无法启动,因为它无法find或加载Qt平台插件“窗口”。

重新安装应用程序可能会解决此问题。

现在我无法摆脱它。 根据以前提出的问题,这可能是qwindows.dll文件(或更确切地说,应用程序无法find它)的问题,首先,我做了我的发布目录的部署,如下所示:

[..]\msvc2012\bin>windeployqt.exe <PATH>

它已经生成了我的应用程序启动所需的所有文件,包括platforms/qwindows.dll因此我只是简单地将它们全部复制到Windows 7目录而没有任何影响 – 仍然会出现错误。

我也尝试从msvc2012\plugins\platforms手动复制一个qwindows.dll – 没有效果,

我做的最后一步是在Dependency Walker中检查我的应用程序 – qwindows.dll是,没有qwindows.dll相关的依赖关系:

图片

所以我现在没有想法,这里有什么问题?

这是我在Windows下部署QOwnNotes (Qt5)的方法: https : //github.com/pbek/QOwnNotes/blob/develop/appveyor.yml

 # AppVeyor build configuration # http://www.appveyor.com/docs/build-configuration os: unstable skip_tags: true install: - set QTDIR=C:\Qt\5.5\mingw492_32 - set PATH=%PATH%;%QTDIR%\bin;C:\MinGW\bin - set RELEASE_PATH=appveyor\release before_build: # getting submodules - git submodule update --init build_script: # using a header file without MemoryBarrier, that causes the build to fail - copy appveyor\qopenglversionfunctions.h %QTDIR%\include\QtGui # workaround for MinGW bug - sed -is/_hypot/hypot/gc:\mingw\include\math.h - cd src # we need to modify that to make it running on AppVeyor - sed -i "s/CONFIG += c++11/QMAKE_CXXFLAGS += -std=gnu++0x/g" QOwnNotes.pro - "echo #define RELEASE \"AppVeyor\" > release.h" # setting the build number in the header file - "echo #define BUILD %APPVEYOR_BUILD_NUMBER% > build_number.h" - qmake QOwnNotes.pro -r -spec win32-g++ # - qmake QOwnNotes.pro -r -spec win32-g++ "CONFIG+=debug" - mingw32-make # creating the release path - md ..\%RELEASE_PATH% # copy the binary to our release path - copy release\QOwnNotes.exe ..\%RELEASE_PATH% # copy OpenSSL DLLs to the release path - copy ..\appveyor\OpenSSL\libeay32.dll ..\%RELEASE_PATH% - copy ..\appveyor\OpenSSL\libssl32.dll ..\%RELEASE_PATH% - copy ..\appveyor\OpenSSL\ssleay32.dll ..\%RELEASE_PATH% # copy portable mode launcher to the release path - copy ..\appveyor\QOwnNotesPortable.bat ..\%RELEASE_PATH% # copy translation files - copy languages\*.qm ..\%RELEASE_PATH% - cd ..\%RELEASE_PATH% # fetching dependencies of QT app # http://doc.qt.io/qt-5/windows-deployment.html - windeployqt --release QOwnNotes.exe # this dll was missed by windeployqt - copy ..\libwinpthread-1.dll . /y # this dll didn't work when released by windeployqt - copy "..\libstdc++-6.dll" . /y # for some reason AppVeyor or windeployqt uses a copy of the German # translation file as English one, which screws up the English user interface - del "translations\qt_en.qm" artifacts: # pushing entire folder as a zip archive - path: appveyor\release name: QOwnNotes deploy: # Deploy to GitHub Releases - provider: GitHub artifact: QOwnNotes draft: false prerelease: false auth_token: secure: spcyN/Dz3B2GXBPii8IywDLq6vfxC1SrN+xR2wMerFM7g2nTy0Lrh5agQONFoInR on: branch: master notifications: # Gitter webhook - provider: Webhook url: https://webhooks.gitter.im/e/b6ef22402eb4af50f73a on_build_success: true on_build_failure: true on_build_status_changed: false 

我希望有一点帮助…