web-dev-qa-db-fra.com

À quoi servent les GUID du projet dans un fichier de solution Visual Studio?

J'ai plusieurs projets dans une seule solution Visual Studio (2008).
Je viens de découvrir que chacun de ces projets utilise un même GUID, donc dans le fichier de solution, il ressemble à ceci:

Project("{FAE04EC0-F103-D311-BF4B-00C04FCBFE97}") = "Pro1", "Pro1\Pro1.csproj", "{...}"
Project("{FAE04EC0-F103-D311-BF4B-00C04FCBFE97}") = "Pro2", "Pro2\Pro2.csproj", "{...}"

Dois-je modifier ces GUID pour qu'ils soient uniques et à quoi servent-ils?

48
Marc

Le bloc de persistance du projet dans un fichier de solution a le format suivant:

Project("{project type GUID}") = "<Project name>", "<project file location>", 
    "{<Unique project GUID>}"
EndProject

Il est donc prévu que le premier GUID ne soit pas unique, il identifie de manière unique le package Visual Studio qui gère ce type de projets.

Le GUID que vous avez publié est intéressant - il ressemble au GUID de projet C # déformé, qui est FAE04EC0-301F-11D3-BF4B-00C04F79EFBC. L'avez-vous modifié vous-même ou s'agit-il d'un problème de publication (par exemple, vous utilisent des paramètres régionaux de droite à gauche tels que l'hébreu ou l'arabe).

61
Oleg Tkachenko

Je vais souvent copier un fichier de projet VS, le renommer et rechercher et remplacer toutes les occurrences du nom du projet pour créer un nouveau projet avec les mêmes paramètres. C'est souvent plus rapide que de créer un nouveau projet et de s'assurer que tous les paramètres sont corrects. J'ignore le GUID. VS changera le GUID dès que j'enregistre le projet après l'avoir ajouté à la solution.

Je fais beaucoup de développement DLL/C/C++ et je me suis beaucoup écarté des paramètres de projet standard au fil des ans (en particulier en ce qui concerne l'optimisation, la génération de code, etc.) et je trouve que la technique de copie est un moyen plus rapide et plus sûr de configurer un projet.

19
Tim Ring

Le premier guide est le type de projet. Les guides de type de projet peuvent être trouvés ici ...

http://www.codeproject.com/Reference/720512/List-of-Visual-Studio-Project-Type-GUIDs

10
Steve Sheldon

Les guides de projet dans le fichier csproj doivent être uniques. D'après mon expérience, si deux fichiers csproj sont inclus dans la même solution, visual studio régénère automatiquement l'un des guides.

3
Ryu

Parole de sagesse: si vous créez un projet XBOX360 XNA 4.0 et essayez cette astuce, N'utilisez pas un guide généré par VS 2012. en générer un dans VS2010 et l'utiliser .

Ou vous obtiendrez l'erreur suivante lorsque vous essayez d'exécuter votre projet redirigé dans XNA Game Studio Connect.

"Ce jeu est manquant ou corrompu, bla bla bla, redémarrer XNA Game Studio Connect?"

puis il bombardera. Les guides VS 2010 fonctionnent bien. Je ne sais pas pourquoi.

1
twobob