web-dev-qa-db-fra.com

L'assemblage en mode mixte est construit contre la version 'v1.1.4322'

j'ai inclus un lecteur directX dans l'application c # .net 4.0 qui est inclus ici (answer2). Le problème est que lorsque j'essaie d'initialiser l'objet (c'est-à-dire Player mPlayer = new Player ()) cette erreur se produit:

L'assemblage en mode mixte est construit par rapport à la version 'v1.1.4322' du runtime et ne peut pas être chargé dans le runtime 4.0 sans informations de configuration supplémentaires.

Quelqu'un sait ce que cela peut être?

48
Alex

Vous devez ajouter un fichier app.Config et définir useLegacyV2RuntimeActivationPolicy à vrai.

Cela est nécessaire pour utiliser des assemblys CLR 2 en mode mixte dans une application .NET 4.

70
Reed Copsey

La façon dont j'ai corrigé cette erreur était en changeant le nœud 'configuration' sur mon app.config à partir de ceci:

<startup>
   <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0"/>
</startup>

pour ça:

<startup useLegacyV2RuntimeActivationPolicy="true">
   <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0"/>
</startup>
69
Gustavo Mori

Voici la configuration d'assemblage possible:

<configuration>
    <startup useLegacyV2RuntimeActivationPolicy="true"> 
        <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5.2" />
    </startup>
</configuration>
3
atik sarker