2010-03-18 3 views
5

Parfois, pour des raisons inconnues, VS 2008 crée des fichiers de solution dirigés par un saut de ligne.À propos de la nouvelle ligne principale dans les fichiers de solution Visual Studio

 

Microsoft Visual Studio Solution File, Format Version 10.00 
# Visual Studio 2008 
[...] 

Cela s'est produit sur différentes machines, et je ne sais pas pourquoi. Une recherche Google n'a donné aucun résultat utile.

Maintenant, pourquoi est-ce que je m'inquiète à ce sujet? Parce que je ne peux pas ouvrir ces solutions dans Windows Explorer. Je dois ouvrir VS, sélectionnez Fichier -> Ouvrir -> Solution et cela fonctionne très bien. Mais pour ouvrir des solutions depuis l'Explorateur, je dois éditer le fichier sln et supprimer la nouvelle ligne de début. Après la suggestion de Leom, j'ai testé plusieurs fois et j'ai trouvé que le problème dépendait uniquement de la nouvelle ligne principale.

Edit: Intéressant: VS 20 affiche le même comportement dans l'autre sens: elle seulement travaille avec un chef de file newline! Au moins sur certaines solutions - sur d'autres solutions c'est exactement la même chose qu'avec VS 2008. Je suis confus.

+0

Toutes mes solutions ont une ligne vide comme première ligne du fichier et elles s'ouvrent toutes bien lorsque je double-clique depuis l'explorateur. Est-il possible que la ligne vide ne soit pas la cause première de votre problème? –

+0

Possible. Bonne idée. Peut-être sauver des fichiers SLN après avoir supprimé le saut de ligne a des effets secondaires. Je vais tester. – mafu

Répondre

2

J'ai aussi une ligne vide dans mes fichiers de solution, mais je n'ai pas ce problème. J'ai fait quelques recherches, il semble que les fichiers de solution lancent réellement le sélecteur de version de Visual Studio, et les 2 premières lignes (pas sûr si ce sont les 2 premières lignes, ou les 2 premières lignes de texte) du fichier SLN agir comme les paramètres d'entrée pour ce sélecteur, link.

Il pourrait y avoir une corruption possible de cet exécutable.

En outre, vous pouvez essayer dans Visual Studio Outils-> Options-> Environnement-> Général et choisissez "Restaurer Assoications File"

blog post here.

0

Les fichiers de solution Visual Studio, pour une raison inconnue, doivent commencer par une ligne vide. Vos problèmes ne sont probablement pas liés à la présence/l'absence d'une nouvelle ligne, mais à l'encodage - si le fichier SLN est édité en dehors de VS, il peut être sauvegardé sans Byte Order Mark (BOM). Essayez d'ouvrir le fichier SLN dans le bloc-notes et faites Enregistrer sous -> Sélectionnez l'encodage UTF-8.

2

Moi aussi, j'ai fait face au même problème. J'ai observé ce scénario après avoir effectué une fusion inverse à l'aide d'IBM rational clearcase. Il a introduit une ligne vide au début du fichier ".sln" lors de la fusion inversée. Pour résoudre ce problème, j'ai ouvert le fichier sln dans un éditeur (j'ai utilisé VI) et supprimé la ligne vide et enregistré le fichier. Puis le fichier s'est ouvert en studio visuel avec un double clic.

+0

Après avoir renommé un certain nombre de répertoires contenant des projets pour ma solution VS2010, je ne pouvais plus double-cliquer pour ouvrir la solution. Suppression de la ligne vide a résolu le problème. – RuairiQ

1

Je viens retitré quelques répertoires dans mes projets et modifié manuellement le fichier .sln et arrêté le chargement automatique de Visual Studio 2010.

J'ai essayé sauver en UTF-8 sans succès. Cependant, en supprimant la ligne vide au début, vous avez restauré la possibilité de double-cliquer pour ouvrir.

Je ne comprends pas, mais bon ça marche pour moi maintenant.

0

J'avais un sln mis à jour de VS2005 vers VS2008, mais il ne s'ouvrait pas en double-cliquant (par défaut il s'ouvre avec le sélecteur de version de Visual Studio). J'ai regardé à l'intérieur d'un sln VS2008 existant, et il a eu une nouvelle ligne principale, alors que le sln amélioré ne l'a pas eu.Ajout d'une nouvelle ligne de début à la SLN mise à jour et il ouvre très bien. Il semble que VS2008 utilise "Fichier de solution Microsoft Visual Studio, Format Version 10.00" avec une nouvelle ligne principale et VS2005 utilise "Fichier de solution Microsoft Visual Studio, Format Version 9.00" sans ligne de retour principale, mais les conversions de VS2005 sln à VS2008 sln ne prend pas en compte le newline d'addition.

4

J'ai aussi observé un comportement étrange concernant l'ouverture du fichier .sln de l'explorateur. Si vous enregistrez le fichier de solution en tant que UTF-8 ou Unicode, démarrez le fichier .sln avec une ligne vide. Sinon, il ne s'ouvrira pas en double-cliquant.

  • Si vous enregistrez le fichier de solution en tant qu'ANSI, ne démarrez pas le fichier .sln avec une ligne vide. Sinon, il ne s'ouvrira pas en double-cliquant. Il semble que le sélecteur de version de Visual Studio ne fasse pas confiance à la nomenclature et souhaite une nouvelle ligne principale, sauf si le fichier est en codage ANSI, que la nouvelle ligne principale doit être omise.

    Vous pouvez le voir vous-même lorsque vous effectuez un enregistrer sous sur le fichier de solution et en sélectionnant un codage différent.

    Il pourrait s'agir de quelque chose d'ancien.

  • +0

    La différence semble être dans la nomenclature: si une nomenclature est présente, la première ligne doit être vide, sinon le fichier ne doit pas commencer par une ligne vide. Cependant, VS 2012 Version Selector ne semble pas du tout aimer les solutions Unicode (UTF-16) (avec ou sans nomenclature), seules les nomenclatures ANSI/UTF8 + sont reconnues. –

    Questions connexes