2013-02-11 2 views
7

Tout d'abord, j'ai trouvé les autres messages sur StackOverflow here, mais cela n'a pas résolu mon erreur.L'assemblage en mode mixte est construit avec l'erreur 'v2.0.50727'

J'ai 3 environnements/domaines différents avec un serveur de construction dans chaque emplacement. Mes environnements Dev et UAT sont très bien construits, mais la version de production ne fonctionne pas.

Je reçois l'erreur

montage en mode mixte est construit contre la version « v2.0.50727 » du moteur d'exécution et ne peut pas être chargé dans la version 4.0 d'exécution sans informations de configuration supplémentaires

J'ai ajouté cette balise à mon fichier app.config (qui était la solution proposée dans le lien ci-dessus je)

<startup useLegacyV2RuntimeActivationPolicy="true"> 
    <supportedRuntime version="v4.0"/> 
    </startup> 

Quoi d'autre pourrait être différent entre mes serveurs de construction/environnements/domaines qui causeraient ce problème?

En réponse à la question de Allen, je crois que c'est ce que vous vous demandez:

<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> 
    <PropertyGroup> 
    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration> 
    <Platform Condition=" '$(Platform)' == '' ">x86</Platform> 
    <ProductVersion>8.0.30703</ProductVersion> 
    <SchemaVersion>2.0</SchemaVersion> 
    <ProjectGuid>{D3D87C05-2811-489B-9F0D-7676B6485AA0}</ProjectGuid> 
    <OutputType>Exe</OutputType> 
    <AppDesignerFolder>Properties</AppDesignerFolder> 
    <RootNamespace>MVST.Batch.CorrespondenceConversion</RootNamespace> 
    <AssemblyName>MVST.Batch.CorrespondenceConversion</AssemblyName> 
    <TargetFrameworkVersion>v3.5</TargetFrameworkVersion> 
    <FileAlignment>512</FileAlignment> 
    </PropertyGroup> 

J'ai plus de 100 autres projets qui sont configurés exactement la même façon et les construire ok.

+0

Est .Net 4.0 installé sur la production? – TheKingDave

+0

Oui, je montre dans le dossier C: \ Windows \ Microsoft.NET \ Framework ainsi que le dossier Framework64 ont tous les deux v4.0.30319 – ganders

+0

Quelle version de l'ensemble d'outils de la plate-forme votre ensemble en mode mixte nécessite-t-il et est-il présent sur le serveur prod? – allen

Répondre

13

http://support.microsoft.com/kb/2572158

Ajouter le verbiage useLegacyV2RuntimeActivationPolicy="true" ci-dessous, soit à l'un des emplacements suivants:

  1. fichier sgen.exe.config situé à l'emplacement suivant: .. \ Program Files \ Microsoft SDK \ Windows \ v7.0A \ bin \ Outils NETFX 4.0 \
  2. Le fichier app.config des applications

<startup useLegacyV2RuntimeActivationPolicy="true"> 

      <supportedRuntime version="v4.0" /> 

</startup>  

+0

J'ai ajouté l'attribut ci-dessus à mon app.config et tout s'est bien passé. – pennyrave

+1

Je veux juste souligner que la partie nécessaire est: useLegacyV2RuntimeActivationPolicy = "true" – Taegost

0

Voici la solution qui a fonctionné ... encore pas sûr pourquoi mon projet devait être 2.0 alors que d'autres (dans le lien dans ma question) devaient être 4.0.

<startup> 
    <supportedRuntime version="v2.0.50727"/> 
    </startup> 
+0

Maintenant que j'ai implémenté ce qui précède dans mon code pour le construire, il échoue maintenant lorsque j'essaie de lancer le travail. Si je commente toute cette section, alors le travail fonctionnera bien. Alors, comment puis-je me rencontrer au milieu? J'ai besoin de cette section pour construire le projet, mais j'ai besoin de le commenter pour que le programme fonctionne ... – ganders

2

Si vous utilisez 64 bits, vous devrez peut-être ajouter à la configuration du moteur de test Visual Studio:

C: \ Program Fichiers (x86) \ Microsoft Visual Studio 11.0 \ Common7 \ IDE \ CommonExtensions \ Microsoft \ TestWindow \ vstest.executionengine.exe.config

Ajouter le nœud de démarrage comme ceci:

<startup useLegacyV2RuntimeActivationPolicy="true"> 
    <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0"/> 
    <requiredRuntime version="v4.0.20506" /> 
</startup> 
Questions connexes