Maison >développement back-end >C++ >Pourquoi mon application Qt ne trouve-t-elle pas le plug-in de plate-forme « Windows » sous Windows Vista ?

Pourquoi mon application Qt ne trouve-t-elle pas le plug-in de plate-forme « Windows » sous Windows Vista ?

Barbara Streisand
Barbara Streisandoriginal
2024-11-30 07:31:11147parcourir

Why Doesn't My Qt Application Find the

Erreur de chargement de l'application : "Plugin de plate-forme QT "Windows" introuvable

Le problème provient d'une incapacité de l'application à localiser et à charger le plugin de la plateforme QT nommé « Windows ». Malgré la mise en œuvre des solutions suggérées lors des précédentes demandes de Stack Overflow, le problème persiste.

Configuration de votre application comprend :

  • Windows 7 Professionnel x64
  • Visual Studio 2012
  • Qt 5.2.0 construit avec des configurations spécifiques
  • QtSingleApplication de qt-solutions
  • 32 bits application
  • qmake exécuté avec des paramètres spécifiques
  • fichier .pri à l'aide d'un indicateur du compilateur

L'application se construit et s'exécute avec succès sur votre machine de développement Cependant, une fois installée et. exécuté sur des machines Windows Vista avec diverses redistributions VC installées, le message d'erreur suivant apparaît :

L'application n'a pas pu démarrer car elle n'a pas pu trouver ou charger le plugin de la plateforme QT "windows"

Pour résoudre ce problème, un répertoire .platforms/ a été créé et rempli avec qwindows.dll (avec d'autres DLL). Malgré ces ajouts, le message d'erreur persiste, désormais accompagné du message :

Les plugins de plateforme disponibles sont : offscreen

Dependency Walker révèle une erreur :

GetProcAddress(0x76CA0000 [KERNEL32 .DLL], "GetCurrentPackageId") appelé depuis "MSVCR110.DLL" à l'adresse 0x6AC6FDFA et a renvoyé NULL. Erreur : La procédure spécifiée est introuvable (127).

Solution :

Pour corriger le problème, qwindows.dll doit être placé dans un dossier nommé plateformes, avec le chemin de l'exécutable vers la DLL étant :

platforms/qwindows.dll

De plus, la ligne suivante doit être ajoutée au début de votre fonction main() :

QCoreApplication::addLibraryPath(" ./");

Ces étapes permettront à l'application de localiser et de charger qwindows.dll, résolvant ainsi le problème de chargement erreur.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn