2010-06-17 5 views
6

J'ai une DLL écrite en C dans le code source. C'est le code pour le General Polygon Clipper (au cas où vous êtes intéressé). Je l'utilise dans un projet C# via le wrapper C# fourni sur la page d'accueil. Cela vient avec une DLL précompilée.Comment compiler une DLL C pour 64 bits avec Visual Studio 2010?

Depuis le passage à une machine de développement 64 bits avec Visual Studio 2010 et Windows 7 64 bits, l'application ne fonctionnera plus. C'est l'erreur que j'obtiens:

Une tentative de chargement d'un programme avec un format incorrect a été effectuée.

Ceci est dû à la DLLImport ing 32bit gpc.dll, comme je l'ai recueilli de trucs trouvés sur le web.

Je suppose que tout cela va disparaître si je recompile la DLL en 64 bits, mais ne peut pas pour l'amour de moi comprendre comment faire. Mes compétences C sont basiques, en ce sens que je peux écrire un programme C avec les outils GNU, mais je n'ai pas d'expérience avec les différents compilateurs/processeurs/IDE.

Je crois que je pourrais le porter en C#. Je veux dire par là que je me fais confiance pour le faire. Mais je préfère ne pas, car il est un beaucoup du travail que je préfère un compilateur à faire pour moi;)

Répondre

5

Il pourrait être aussi simple que de créer une nouvelle plate-forme:

  • pages de propriétés ouvertes du projet (ALT + ENTRER)
  • choisir la plate-forme x64 dans le menu déroulant en haut à droite
    • si la plate-forme n'existe pas déjà, créez un nouveau
  • reconstruisent
    • assurez-vous que vous vérifiez les objets à droite lors de sa construction, que vous avez maintenant probablement un autre répertoire de sortie.
+0

cela fonctionne vraiment! –

+1

La plateforme x64 n'existe pas, comment en créer une nouvelle? J'ai un projet C++/MFC dans VS2010. Je ne pouvais pas trouver la plate-forme x64 ou 0x86 n'importe où dans les paramètres du projet. – zar

+0

Avec Visual Studio 2010 Express, le SDK 64 bits n'est pas inclus. Vous devez le [télécharger séparément et l'installer] (http://www.microsoft.com/en-us/download/details.aspx?id=8279). J'ai eu trop de problèmes avec ça et j'ai réussi à avoir une installation correcte sur un ordinateur, par accident. Depuis lors, je suis incapable de répéter une installation à partir de zéro. Je vais vérifier GCC (qui je pense travaille maintenant mieux que le compilateur visuel). – Matthieu

Questions connexes