4 votes

L'exécution d'assemblages en mode mixte construits en .NET 3.5 dans .NET 4 à l'aide de la configuration de l'application requiert également le Framework 3.5.

Ceci est similaire au fil déjà créé ici : Assemblage en mode mixte dans .NET 4

En utilisant la configuration de l'application, j'ai pu forcer les assemblages à s'exécuter sur .NET 4. Sur une machine XP, j'ai installé uniquement le .NET 4 (sans .NET 3.5 ou 2.0) et j'ai essayé d'exécuter l'application construite. Elle ne parvient pas à charger l'assemblage en mode mixte construit dans le cadre 3.5 dans .NET 4 sans le cadre .NET 3.5 sur la machine.

Pourquoi devrait-il dépendre de .NET 3.5 alors que je force l'application à s'exécuter sur .NET 4 en utilisant App config ?

3voto

Alex Essilfie Points 5066

Vous rencontrez ce problème parce que .NET 3.5 utilise le Common Language Runtime (CLR) version2 et que .NET 4.0 fonctionne sur le CLR v4. Par conséquent, si votre assemblage a été construit en .NET 3.5, il ne fonctionnera que sur un ordinateur équipé du CLR v2.

Pour faire court. Compilez votre assemblage .NET 3.5 comme un assemblage .NET 4, sinon installez également .NET 3.5 sur l'ordinateur cible.

Vous pouvez consulter ce site pour plus d'informations :

3voto

Markus Points 261

La raison en est que la façon dont il se lie aux assemblages en mode mixte. Assurez-vous que vous utilisez l'option useLegacyV2RuntimeActivationPolicy="true" dans la configuration de démarrage de votre fichier app.config (qui, je suppose, ressemble à ce qui suit) :

<startup useLegacyV2RuntimeActivationPolicy="true">
  <supportedRuntime version="v4.0.30319" />
  <supportedRuntime version="v2.0.50727" />
</startup>

Voir aussi : Que fait "useLegacyV2RuntimeActivationPolicy" dans la configuration de .NET 4 ?

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X