Question

J'essaie de mettre à niveau un projet de VS2005.C'est un projet VB.NET B qui dépend d'un projet C # qui fait référence à une DLL C ++, a.dll.Je reçois une erreur disant «Impossible de trouver Assemblage A_Class, version 2.0.0.0, Culture= neutre, PublickeyToken= null '.La plate-forme ciblée du projet C ++ est de 4,0 et puisque ce projet dépend des autres, je ne peux pas l'abattre.Mais j'ai mis la plate-forme pour le projet VB.NET à 4.0.Que se réfèrent à la version 2.0.0.0?J'ai essayé de créer un nouveau projet et a ajouté les formulaires VB après que je l'ai construit avec succès.La DLL C ++ est dans le répertoire de sortie, si le projet VB ne le trouve pas là-bas, il n'arrive pas à ce point.Pendant la construction.Je n'ai aucune erreur (mais les formulaires ne se chargent pas) ou que je reçois 2 erreurs (une pour chaque formulaire):

error MSB3103: Invalid Resx file. Could not load file or assembly 'A-class, Version=2.0.0.0, Culture=neutral, PublicKeyToken=null' or one of its dependencies. An attempt was made to load a program with an incorrect format. Line 136, position 5.

aidez-moi s'il vous plaît, donnez-moi une suggestion, je ne sais pas où regarder.Merci beaucoup.

Était-ce utile?

La solution

"Une tentative a été faite pour charger un programme avec un format incorrect"

99% du temps Cela signifie que vous essayez de charger un ensemble 32 bits à l'aide d'outils 64 bits, ou inversement.Le numéro de version dans le message d'erreur signifie simplement le numéro de version de l'assemblage qu'il tente de charger;Cela n'a rien à voir avec la version .NET étant ciblée.Dans ce cas, il semble que le compilateur de ressources est ce qui a des problèmes.

Essayez de configurer votre solution pour construire explicitement x86 au lieu de tout CPU et voir si cela résout votre problème.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top