2008-11-05 6 views
1

J'ai actuellement une DLL 32 bits qui a été créée avec Visual Studio 2003 en C++ en utilisant Managed Extensions. J'essaie maintenant de compiler une version 64 bits sans avoir à mettre à jour vers C++/CLI. J'ai suivi le tutoriel au this location. Je reçois l'erreur suivante:Compiler le projet 32 ​​bits VS 2003 en 64 bits

fatal error C1197: cannot reference 'c:\windows\microsoft.net\framework\v1.1.4322\mscorlib.dll' as the progam has already referenced 'c:\windows\microsoft.net\framework\v2.0.50727\mscorlib.dll'

Je ne peux pas comprendre ce qui fait référence à la version 2.0 du .NET dll.

+0

64 bits avec VS2003? VS2003 n'est pas venu avec un compilateur croisé de 64 bits?!? – KTC

+3

En effet. Apparemment, vous pouvez télécharger le Platform SDK (qui contient un compilateur 64 bits) et le compiler dans VS2003 (à condition de le démarrer avec les bonnes variables d'environnement). –

Répondre

1

Appelez-vous manuellement le fichier .dll dans le code? Comme dans ça?

#using "C:\Windows\Microsoft.NET\Framework\v1.1.4322\mscorlib.dll 

Si oui, vous pouvez changer cette ligne juste:

#using "mscorlib.dll" 
+0

Cela se produit indépendamment du fait que je spécifie le chemin complet, '#using "mscorlib.dll"', '#using ' ou omettre complètement. –

0

Vous incluez une bibliothèque qui lie à une autre version de mscorlib?

Spécifiez-vous l'option/clr et faites-vous un #using "mscorlib.dll"?

Questions connexes