software pesa gui gratis desventajas cuanto creator con qt qt5

pesa - La aplicación implementada con bibliotecas QT5 no se inicia en Windows 7



qt software (8)

Después de varios días de búsqueda sin progreso, tropezamos con un error QT:

https://bugreports.qt.io/browse/QTBUG-28766

Con QT5, además de las bibliotecas de QT esperadas, msvcr100.dll y msvcp100.dll; resulta que debe enviar su solicitud con:

platforms/qminimal.dll platforms/qwindows.dll

también. Que se encuentra en la biblioteca local de QT5 install @: / Qt5.0.0 / 5.0.0 / msvc2010 / plugins / platforms Busqué en todas partes, y no pude encontrar esta información en su documentación.

Recientemente hemos estado migrando nuestra aplicación basada en QT en Windows de QT 4.8 a QT 5, y hemos tenido un problema con la implementación. Tenga en cuenta que nuestra aplicación no ha cambiado, solo la hemos creado con el nuevo marco QT5. Con un poco de esfuerzo logramos construirlo con la biblioteca QT5 basada en VS2010; y ejecuté con éxito la aplicación de Qt Creator.

Como hicimos con QT4, hemos incluido un conjunto requerido de bibliotecas QT con el instalador.

En nuestra fase de prueba, cuando instalamos nuestra aplicación QT5 en una máquina limpia; no comenzaría No solo la aplicación no se inició, sino que no generó ningún error.

Ejecutamos la aplicación a través del comprobador de dependencias; y no faltaron dependencias de biblioteca en absoluto.


La mejor opción es usar: windeployqt.exe . Esta herramienta resuelve todas las dependencias de su application.exe.


Los dlls de la plataforma Qt se encuentran en la carpeta "complementos" en "qtbase": C: / Qt / 5.0.0 / qtbase / plugins / platforms


Para mí, ejecutar la aplicación gui independiente "Hello World" (Qt sdk 5.0.1 mingw, Win7 x64). Necesito agregar los siguientes archivos al directorio del programa:

  1. plataformas / qwindows.dll
  2. D3DCompiler_43.dll
  3. icudt49.dll
  4. icuin49.dll
  5. icuuc49.dll
  6. libEGL.dll
  7. libgcc_s_sjlj-1.dll
  8. libGLESv2.dll
  9. libstdc ++ - 6.dll
  10. libwinpthread-1.dll
  11. Qt5Core.dll
  12. Qt5Gui.dll
  13. Qt5Widgets.dll

La información de implementación completa para Windows está disponible en qt 5.5 doc


Parece que un qt.conf vacío ubicado en el mismo directorio que la aplicación está causando problemas al iniciar una aplicación Qt5 en Windows 7. Intente eliminarlo.


Sí, bien visto. Estaba teniendo los mismos problemas de implementación usando qt 5.0.2.

Del mismo modo, la carpeta de plataformas instaladas con estos dos dlls en la carpeta de aplicaciones, y las implementaciones en vista y win7 ahora funcionan.

Dependency walker no ayuda aquí ya que no notifica qwindows.dll o qminimal.dll como dlls necesarios.

Las plataformas dlls en mi instalación de Qt están en / Qt / 5.0.2 / mingw47_32 / plugins / platforms.


Utilicé una instancia de QMediaPlayer y QMediaPlaylist y mi aplicación ya no se iniciaba, dando el siguiente error: Esta aplicación no se pudo iniciar porque no pudo encontrar o cargar el complemento de la plataforma Qt "windows". Reinstalar la aplicación podría resolver el problema.

Después de pasar 4 días tratando de descubrir qué estaba pasando, descubrimos que hay una ruta de acceso codificada en Qt5Core.dll para cargar los complementos, particularmente el archivo wmfengine.dll . Asegúrese de compilar Qt5Core para no tener esta ruta codificada (: / Qt / 5.5 / msvc2010).

Ruta de acceso Qt5Core.dll en Qt5Core.dll falla el complemento wmfengine.dll para cargar


para el tutorial del bloc de notas, en win7 y qt5.1.1

el despliegue de pasos es:

* change build mode to release, not debug, * build, * create a output folder somewhere e.g. desktop/notepad/ * * copy file to output folder file list: * from "workspace_home/build-notepad-xxx-Release/release" * notepad.exe * from "qt_home/5.1.1/msvc2010/bin" * icudt51.dll * icuin51.dll * icuuc51.dll * libEGL.dll * libGLESv2.dll * Qt5Core.dll * Qt5Gui.dll * Qt5Widgets.dll * * from "qt_home/5.1.1/msvc2010/plugins/platforms" * platforms/ (need to create this sub folder in the output folder) * qwindows.dll * * * * run the .exe file, make sure it works, * * ok *