web-dev-qa-db-fra.com

Pourquoi ne puis-je pas créer de projet partagé dans Visual Studio 2015?

J'ai téléchargé Visual Studio Community 2015. J'ai essayé de créer un projet partagé et j'obtiens une erreur:

enter image description here

Contenu de Microsoft.Windows.UI.Xaml.CSharp.targets

<Project xmlns="http://schemas.Microsoft.com/developer/msbuild/2003">
    <PropertyGroup Condition="'$(TargetPlatformVersion)'==''">
        <TargetPlatformVersion>8.0</TargetPlatformVersion>
    </PropertyGroup>

    <PropertyGroup Condition="'$(TargetPlatformIdentifier)' == 'UAP'">
        <RedirectionTarget>8.2</RedirectionTarget>
    </PropertyGroup>

    <PropertyGroup Condition="'$(RedirectionTarget)' == ''">
        <RedirectionTarget>$(TargetPlatformVersion)</RedirectionTarget>
    </PropertyGroup>

    <!-- Direct 8.0 projects to 8.1 targets to enable retargeting  -->
    <PropertyGroup Condition="'$(RedirectionTarget)' == '8.0'">
        <RedirectionTarget>8.1</RedirectionTarget>
    </PropertyGroup>

    <Import Project="$(RedirectionTarget)\Microsoft.Windows.UI.Xaml.CSharp.targets" />
</Project>

Je n'ai pas de dossier avec le nom 8.1

27
kriper

Une solution consiste à apporter les modifications suivantes:

Ouvrez le fichier %ProgramFiles(x86)%\MSBuild\Microsoft\VisualStudio\v14.0\CodeSharing\Microsoft.CodeSharing.CSharp.targets (pour Visual Basic, le fichier est Microsoft.CodeSharing.VisualBasic.targets) et recherchez les entrées suivantes autour de la ligne 8 -

<Import Project="$(MSBuildExtensionsPath32)\Microsoft\WindowsXaml\v$(VisualStudioVersion)\Microsoft.Windows.UI.Xaml.CSharp.targets" Condition="Exists('$(MSBuildExtensionsPath32)\Microsoft\WindowsXaml\v$(VisualStudioVersion)\Microsoft.Windows.UI.Xaml.CSharp.targets')"/>
<Import Project="$(MSBuildBinPath)\Microsoft.CSharp.Targets" Condition="!Exists('$(MSBuildExtensionsPath32)\Microsoft\WindowsXaml\v$(VisualStudioVersion)\Microsoft.Windows.UI.Xaml.CSharp.targets')" />    

Modifiez ces lignes comme suit -

<Import Project="$(MSBuildExtensionsPath32)\Microsoft\WindowsXaml\v$(VisualStudioVersion)\Microsoft.Windows.UI.Xaml.CSharp.targets" Condition="false"/>
<Import Project="$(MSBuildBinPath)\Microsoft.CSharp.Targets" Condition="true" />

Fondamentalement, annulez l'importation conditionnelle des projets partagés basés sur Xaml.

C'est (croyez-le ou non) les conseils que j'ai reçus de MS pour ce problème. Je pense que cela est lié à une mise à niveau impure des versions RC (ou antérieures) vers RTM et la sélection de différentes options lors de l'installation.


(Insérez les mises en garde habituelles concernant la modification de fichiers qui ne vous "appartiennent" pas, effectuez des sauvegardes, et si vous n'êtes pas sûr de faire de telles modifications, ne le faites pas)

35

Essayez de copier les répertoires 8.0 et 8.1 de C:\Program Files (x86)\MSBuild\Microsoft\WindowsXaml\v12.0 vers C:\Program Files (x86)\MSBuild\Microsoft\WindowsXaml\v14.0 (notez le numéro de version à la fin).

Il semble que ceux-ci manquent dans l'installation de 2015 sur Windows 7.

Vous devrez redémarrer Visual Studio après cela.

8
Jarek Kardas

Ce n'est pas un problème difficile. M. Kriper (le demandeur initial de la question) a probablement installé à l'aide de l '"installation par défaut" pour sa version de Visual Studio 2015. M. Kondrasovas dans la réponse 2 souligne la nécessité d'installer plus de composants. Son approche a abouti à un Visual Studio affichant une erreur d'utilitaire de configuration qui n'est pas la faute de M. Kondrasovas. La réponse de M. Kondrasovas est probablement correcte si vous ne rencontrez pas d'erreur (je n'ai aucun moyen de vérifier la réponse).

La solution est d'aller dans le Panneau de configuration | Programmes | Désinstaller un programme. Sélectionnez Visual Studio 2015 et "Modifier" l'instance installée de Visual Studio 2015:

[désolé je ne peux pas montrer l'image b/c je n'ai pas de 10 pour une réputation et StackOverflow.com me bloque]

La capture d'écran précédente (imaginaire) provient de l'installation par défaut de Visual Studio 2015 Professional. Vous pouvez jouer et découvrir la fonctionnalité exacte à installer ou si vous avez l'espace disque, cliquez simplement sur "Sélectionner tout" puis sur "Suivant". Astuce: le bouton "Suivant" n'est pas activé jusqu'à ce qu'une modification soit apportée aux composants sélectionnés de Visual Studio 2015.

Si vous voulez voir l'image manquante une écriture complète, j'ai écrit un article de blog sur la question: http://www.softwarepronto.com/2015/08/visual-studio-2015-error-adding- shared.html

7

Pour résoudre ce problème, installez les modèles de projet Windows 8/8.1.

Je n'ai fait que:

  1. Open VS 2015
  2. Cliquez sur Fichier-> Nouveau-> Projet
  3. Choisissez le seul modèle de projet sous Windows 8

Cela lancera l'installation de Visual Studio où vous pourrez installer les modèles manquants.

Ensuite, vous pouvez créer votre projet.

7
Igor Kondrasovas