Je travaille sur un projet qui est lié à une bibliothèque statique tierce (appelée ici EXTERNALLIB). Dans Visual Studio 2005, j'étais capable de créer un lien vers EXTERNALLIB et de créer un exécutable utilisable. Maintenant, nous utilisons Visual Studio 2008 et je reçois l'erreur suivante:Erreur lors de la liaison avec une bibliothèque statique tierce construite avec la version précédente de Visual Studio
fatal error C1047: The object or library file EXTERNALLIB was created with an older compiler than other objects; rebuild old objects and libraries.
est-il un moyen pour moi de dire au compilateur de lier correctement EXTERNALLIB? Je crois que le problème peut être lié à des conventions d'appel spécifiques (__stdcall, __cdecl, __clrcall, __thiscall). Puis-je indiquer dans le nouveau programme la convention d'appel correcte pour l'ancienne bibliothèque? Y a-t-il des commentaires spécifiques que je peux donner à notre fournisseur (comme l'utilisation d'APIENTRY dans les fichiers d'en-tête) de telle sorte que ce problème ne se produira pas lors des mises à jour futures du compilateur?
Le code est écrit en C++. Je n'ai pas accès au code pour EXTERNALLIB et donc je suis incapable de le reconstruire moi-même.