L'application n'a pas réussi à s'initialiser correctement (0xc0150002)
Je suis en train de compiler un programme SFML que j'ai écrit en Visual C++ 2010. Il compile bien, mais quand je lance l'exécutable, j'obtiens cette erreur:
The application failed to initialize properly (0xc0150002). Click on OK to terminate the application.
Ce qui se passe à chaque fois que j'essaie d'exécuter une application qui utilise la SFML, j'ai inclus les bibliothèques que j'ai utilisé à l'extérieur des dépendances, de la bibliothèque et comprennent libaries sont tous dans la lib et les fichiers à inclure dans le VC dossier et la DLL dans le même dossier que mon fichier exe. Comment puis-je résoudre ce problème?
MODIFIER
Ici est la sortie de débogage à partir du débogueur:
'SFML.exe': Chargé 'C:\Documents and Settings\Greg\Mes Documents\Visual Studio 2010\Projects\SFML\Debug\SFML.exe', chargé des Symboles. 'SFML.exe': Chargé 'C:\WINDOWS\system32\ntdll.dll', Ne peut pas trouver ou ouvrir le fichier PDB 'SFML.exe': Chargé 'C:\WINDOWS\system32\kernel32.dll', Ne peut pas trouver ou ouvrir le fichier PDB 'SFML.exe': Chargé 'C:\Documents and Settings\Greg\Mes Documents\Visual Studio 2010\Projects\SFML\Debug\sfml-graphics.dll', Ne peut pas trouver ou ouvrir le fichier PDB LDR: LdrpWalkImportDescriptor() n'a pas de sonde C:\Documents and Settings\Greg\mes documents\visual studio 2010\Projects\SFML\Debug\sfml-graphics.dll pour son manifeste, ntstatus 0xc0150002 Debugger:: Une non prise en charge non-exception qui a été levée au cours du processus de charge Le programme '[2792] SFML.exe: Natif' s'est terminé avec le code -1072365566 (0xc0150002).
MODIFIER
J'ai essayé de recompiler la bibliothèque, mais j'ai cette erreur:
C:\Program Files\MSBuild\Microsoft.Rpc\v4.0\Microsoft.CppBuild.cibles(990,5): avertissement MSB8012: TargetPath(C:\SFML-1.5\build\vc2008\..\..\Temp\vc2008\sfml-network\Debug DLL\sfml-network.dll) ne correspond pas à l'éditeur de liens OutputFile la valeur de la propriété (C:\SFML-1.5\lib\vc2008\sfml-network-d.dll). Cela peut entraîner votre projet de construction de manière incorrecte. Pour corriger cela, assurez-vous que $(OutDir), $(TargetName) et $(TargetExt) des biens dont la valeur correspond à la valeur spécifiée en %(Lien.OutputFile). C:\Program Files\MSBuild\Microsoft.Rpc\v4.0\Microsoft.CppBuild.cibles(992,5): avertissement MSB8012: TargetName(sfml-réseau) ne correspond pas à l'éditeur de liens OutputFile la valeur de la propriété (sfml-réseau-d). Cela peut entraîner votre projet de construction de manière incorrecte. Pour corriger cela, assurez-vous que $(OutDir), $(TargetName) et $(TargetExt) des biens dont la valeur correspond à la valeur spécifiée en %(Lien.OutputFile).
J'ai besoin de changer la valeur de TargetPath mais je ne peux pas trouver une option pour ce faire, quelqu'un sait-il comment je peux le changer?
OriginalL'auteur Greg Treleaven | 2010-08-21
Vous devez vous connecter pour publier un commentaire.
Ceci est probablement causé par la SFML être compilé avec une autre version de Visual C++ (je suppose que c'est en 2008 ou encore 2005). Vous sont apparemment absents de la correspondante du fichier manifeste et msvc*.bibliothèques dll. Je suggère de le recompiler SFML-vous à l'aide de VS 2010 qu'il vous fera économiser beaucoup d'ennuis avec le manifeste de peaufinage.
La recompilation de la .lib .les fichiers dll avec VS2010 résout le problème
OriginalL'auteur Karel Petranek
Je l'ai corrigé en modifiant les propriétés du projet configuration de runtime: /MT pour la libération et /MTd pour le debug (propriétés du projet > C/C++ > génération de Code > Runtime library)
OriginalL'auteur Ita Li
Exécutez le fichier exe dans le VS 2010 débogueur avec les paramètres suivants:
Maintenant, je pense que cela devrait vous aider à déterminer quel échec de chargement de DLL.
Suivez le lien blogs.vertigo.com/personal/keithc/Blog/archive/2007/07/20/... En tout cas, maintenant, comme pour la nouvelle Édition, vous savez que le problème est dans sfml-graphics.dll.
C'est aussi appelée side-by-side problème. stackoverflow.com/questions/2211347/... mathworks.com/support/solutions/en/data/1-94C4EA/...
OriginalL'auteur Chubsdad
Microsoft Visual Studio 2010 n'était pas compatible avec l'2008 versions de la SFML. J'ai résolu le problème en n'utilisant pas de 2010 et à l'aide de Dev-C++ de l'insead.
OriginalL'auteur Greg Treleaven
Si vous utilisez Visual Studio 2015, s'il vous plaît changer la Plate-forme d'Outils, soit par rapport à 2010 ou VS 2008. Cette option est disponible dans le Projet->Propriétés->Propriétés de Configuration->Général.
OriginalL'auteur Divyanand M S