Comment forcer L'ouverture D'un fichier Solution (SLN) dans Visual Studio 2013?

en Essayant d'ouvrir un VS 2012 solution (SLN fichier) explicitement dans VS 2013 réussit. Il suffit de double-cliquer sur elle dans L'Explorateur de Windows l'ouvre encore dans VS 2012 à la place.

j'ai lu " Visual Studio 2012 ne convertit pas vs2010 solution? " et suivie au suggestion "Enregistrez sous..."le fichier de solution .

néanmoins, il s'ouvre dans VS 2012 par défaut.

ma question:

comment modifier un fichier SLN pour le forcer à être ouvert dans Visual Studio 2013?

99
demandé sur Community 2013-10-22 12:54:37

6 réponses

le fichier .sln indique la version prévue comme l'une des premières lignes - par exemple:

Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio 2013

ou:

Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio 2012

Cependant - il ne peut faire usage de ce si l'application par défaut pour .sln fichiers est le "Microsoft Visual Studio Version Sélecteur". Il n'est pas rare que l'application par défaut .sln soit une version spécifique à la place. Dans windows 8:

enter image description here

vous pouvez dire lequel est le défaut parce qu'il dit "continuer à utiliser":

enter image description here

enter image description here

119
répondu Marc Gravell 2013-10-22 09:34:08

Notez que vous pouvez également forcer la mise à jour d'une .la sln ou .proj fichier en utilisant la ligne de commande, où devenv est la version cible IDE:

devenv "MyProject.sln" /upgrade

exemple:

"%programfiles(x86)%\Microsoft Visual Studio 12.0\Common7\IDE\devenv.exe" "D:\Source\MySolution.sln" /upgrade

notez que ceci n'ouvre pas Visual Studio. Une alternative consiste à, à l'intérieur de L'IDE, sélectionner "Enregistrer sous" pour votre fichier solution et écraser ou enregistrer la solution sous un nouveau nom.

lire plus: http://msdn.microsoft.com/en-us/library/w15a82ay.aspx

33
répondu zumey 2014-12-23 17:38:30

semble comme L'OP a déjà une réponse de travail ... mais pour moi, le problème était différent. J'ai eu une solution VS 2012 (plusieurs en fait) et je voulais les convertir en 2013 (ce que je comprends est un changement insignifiant à la .sln file, mais je voulais que ce soit fait automatiquement au cas où il y aurait une logique secrète de mise à jour que je ne connaissais pas).

donc j'ai pensé que je l'ouvrirais dans VS2013, il mettrait automatiquement à niveau comme prévu, et puis je serais réglé pour double-cliquer la solution et le voir dans VS2013 aller de l'avant. Mais l'ouverture de VS2013 N'était pas une mise à niveau automatique de la solution pour moi comme prévu et je n'ai pas pu trouver un moyen explicite pour forcer la mise à niveau après l'ouverture du fichier dans VS2013. Je pourrais travailler avec la solution, enregistrer mes modifications, et fermer VS2013, mais le .sln resterait inchangé et non modernisé.

il S'avère que mon problème était dans la façon dont j'ouvrais la solution ... comme d'habitude je clic droit sur les fichiers et sélectionnez "ouvrir avec" et choisir le le programme que je veux utiliser pour ouvrir un fichier. Je le fais souvent. Notez que je ne parle pas de changer le programme par défaut "Ouvrir avec", mais juste d'ouvrir un fichier avec un programme spécifique une fois. Je voudrais donc clic droit sur le .la sln fichier... ouvert avec Visual Studio 2013 ... et rien ne pouvait le mettre à niveau.

finalement j'ai pensé à aller dans VS2013, puis faire Fichier > Ouvrir et sélectionner le .fichier sln (cela m'est étranger puisque je n'ouvre presque jamais rien de cette façon, peut-être que vous êtes de la même façon). Quoi qu'il en soit qui a mis à jour le fichier solution instantanément.

après mise à niveau, lignes 2-3 de la .la sln fichier modifié à partir de ceci:

Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio 2012

à ceci:

Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio 2013
VisualStudioVersion = 12.0.30501.0
MinimumVisualStudioVersion = 10.0.40219.1

donc de mon expérience, pour mettre à jour automatiquement une VS2012 .sln to VS2013, vous devez ouvrir VS2013 et sélectionner le .sln de la boîte de dialogue Fichier > Ouvrir. Utilisation de l'Explorateur shell pour forcer le .le fichier sln à ouvrir dans VS2013 n'invoque pas la logique de mise à niveau (apparemment).

comme note complémentaire, j'ai testé avec une autre solution, et après avoir fait des modifications via le Gestionnaire de Configuration (qui évidemment" touche " le .sln file) il a fait la mise à niveau D'une VS2012 en VS2013, même après l'avoir ouverte par le clic droit Ouvrir avec.

21
répondu TCC 2014-10-21 19:03:30

j'avais une solution qui avait été précédemment mis à niveau de 2010 à 2013 avec succès, mais encore montré le .la sln associés à 2010.

j'ai testé toutes les méthodes données dans ce thread et le seul qui a corrigé avec succès le .sln devait ouvrir Visual Studio 2013 seul, puis ouvrir la solution qui était encore associée à 2010 dans L'IDE, puis utiliser le [fichier] > [Enregistrer (nom).la sln comme] pour remplacer l'existant .la sln fichier.

Réglage de le fichier assoc de la .la sln à la "version de Visual Studio sélecteur" apporté aucun changement et la solution a continué à ouvrir en 2010.

La devenv (nom).la sln /méthode de mise à jour n'a pas modifié mon .la sln fichier.

Piratage le texte brut de l' .le fichier sln a corrompu le mien et il ne s'ouvrirait pas du tout.

7
répondu Jeff 2015-10-29 17:30:20

pour résoudre ce problème, je viens de changer les lignes suivantes de la .fichier sln:

Microsoft Visual Studio Solution File, Format Version 11.00
# Visual Studio 2010

dans ceux-ci:

Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio 2013

la ligne de commentaire doit être changée au fur et à mesure qu'elle est analysée par le chargeur de solution.

6
répondu Zac 2015-07-16 07:36:43

cela peut fonctionner pour les lecteurs qui tentent de mettre à niveau un fichier de solution à Visual Studio 2015. (J'ai mis à niveau une solution VS 2012.)

  1. ouvrir la solution dans VS 2015.
  2. Ajouter un nouveau projet à la solution. (J'ai ajouté un projet de test.)
  3. supprimer le projet.
  4. Enregistrer la solution.

vous pouvez supprimer le dossier de projet supprimé à ce moment depuis l'étape 3 ne le supprimez pas.

cela a fonctionné pour moi alors que ni zumey ni TCC réponses ne l'ont fait.

MODIFIER

Metro Smurf avait une réponse similaire, mais plus facile que la mienne pour une question similaire . Ses pas étaient:

  1. Open solution in VS 2015
  2. Cliquez-droit sur la solution > Ajouter > Nouveau Dossier de Solution (le nom n'a pas d'importance)
  3. Enregistrer la solution
  4. supprimer le nouveau dossier solution
  5. Enregistrer la solution
4
répondu Theophilus 2017-05-23 12:10:41