J'ai une DLL très simple écrite en C++ non géré et accessible depuis mon application. Je suis récemment passé à Visual Studio 2010, et la DLL est passée de 55k à 35k sans modifications de code, et maintenant il ne sera plus chargé dans Windows 2000. Je n'ai pas modifié les paramètres du code ou du compilateur. J'ai ma configuration définit pour 0x0500, qui devrait inclure le support de Windows 2000. Quelqu'un d'autre a-t-il déjà rencontré cela ou a-t-il des idées sur ce que je peux faire?Problème lors de l'utilisation de DLL C++ compilée Visual Studio 2010 dans Windows 2000
Répondre
Visual Studio 2010 cannot build binaries that run on Windows 2000. C'est en fait encore pire que ça, they won't run on Windows XP RTM or Windows XP Service Pack 1 either. En effet, la bibliothèque d'exécution C de VS2010 nécessite l'API EncodePointer qui n'est pas disponible avant le SP2.
Il semble que vous soyez bloqué avec l'installation de VS2008 si vous voulez prendre en charge les versions antérieures de Windows. Vous pouvez déplacer votre projet entier vers Visual Studio 2008 ou vous pouvez cibler le jeu d'outils vc90 (Visual Studio 2008) à partir de vos projets Visual Studio 2010. Pour plus de détails sur cette dernière méthode, voir cette réponse à ma question connexe here.
Merci pour le lien, c'est une nouvelle malheureuse. :( –
@Jon Tackabury: Je sais - je voudrais vraiment utiliser 'auto' :( –
Je ne veux pas avoir VS 2008 et 2010 à la fois installé. :( –
La solution est probablement de fournir EncodePointer (et DecodePointer, évidemment) dans une bibliothèque séparée, et un lien qui préférentiellement à KERNEL32.LIB. C'est un scénario parfaitement supporté. Dans le passé, les libs comme "LIBCTINY" et "UNICOWS" ont utilisé ce mécanisme de lien préférentiel pour ajouter/remplacer des fonctions sélectionnées mais pas toutes d'une autre lib.
Exactement.Malheureusement, je n'ai pas voir votre réponse avant d'écrire mon propre dans le sujet lié, sinon je ne passerais pas beaucoup de temps exp ériment avec elle. Cependant, comme ma réponse contient du code prêt à l'emploi et testé, j'espère que ce sera utile - voir http://stackoverflow.com/questions/2484511/can-i-use-visual-studio-2010s-c-compiler -with-visual-studio-2008s-c-runtime/3502056 # 3502056 – Suma
Une note d'implémentation importante: vous ne fournissez pas EncodePointer/DecodePointer (les fonctions de DLL) directement. Vous devez remplacer leurs vecteurs d'importation, ce qui est résolu lors de l'utilisation de .lib. Ils sont appelés comme _imp__FunctionName. – Suma
- 1. Application Windows Form C Visual Studio 2010
- 2. Visual Studio 2010 Migration Problème
- 3. visual studio 2010 problème d'installation
- 4. Problème lors de la création d'un fichier .dll (Visual C++)
- 5. Débogage Visual Studio 2010 DLL Project
- 6. Une DLL C++ compilée avec Visual Studio 2008 peut-elle être utilisée avec Visual Studio 2005?
- 7. Où mettre DLL bibliothèque compilée C#
- 8. Libération de mémoire dans le problème C++ (Visual Studio 2010)
- 9. Aucune DLL compilée dans Visual Studio 2008 express lors de la construction
- 10. Problèmes de pile lors de l'appel d'une DLL compilée avec Visual C++ dans GCC
- 11. Ajout d'un problème de référence dans Visual Studio 2010
- 12. problème avec graphics.h dans Visual Studio 2010
- 13. Visual Studio 2010 64 bits COM Interop Problème
- 14. Problème lors de l'ouverture de Word 2010 à l'aide de Visual Studio 2010?
- 15. Problème de débogage Visual Studio 2010
- 16. Projet de DLL C++ Visual Studio 2010 - Aucun fichier DLL de sortie!
- 17. Chargement .dll à utiliser dans Visual Studio 2010
- 18. Ajout d'un problème de DLL de référence dans Visual Studio
- 19. liste de débogage dans Visual Studio 2010
- 20. Installation de Visual Studio 2010
- 21. problème de référence Microsoft.SqlServer.SqlTools.VSIntegration/bizarreries dans Visual Studio 2010
- 22. Visual Studio 2010 Express pour Windows Phone - problème IntelliSense
- 23. Création de DLL C++ avec Visual Studio
- 24. Visual Studio 2010 problèmes Windows Designer Designer
- 25. Problème d'ajout de référence de service dans Visual Studio 2010
- 26. L'utilisation de TagLib dans Visual Studio 2010
- 27. Paramètres dans Visual Studio C++ 2010
- 28. Développement de Windows Mobile dans Visual Studio 2010
- 29. Utilisation de DLL construite par MinGW/GCC dans un projet Visual Studio 2010 C++/CLI
- 30. Visual Studio 2010 (C++) hautement instable
duplication possible de [Puis-je utiliser le compilateur C++ de Visual Studio 2010 avec C++ Runtime Library de Visual Studio 2008?] (Http://stackoverflow.com/questions/2484511/can-i-use-visual-studio-2010s-c -compiler-with-visual-studio-2008s-c-runtime) – Suma