2012-02-10 172 views
2

我从别人处得到了一些项目。 (他转换了这个项目) 看来,他复制&粘贴了我演示项目中的项目文件。Visual Studio项目:重复项目指导

现在,所有已转换的项目都具有相同的项目GUID。这绝对不好。 但是如果某些项目具有相同的GUID会发生什么? TFS或其他地方可能有错误吗?

我该如何解决这个问题?最简单的解决方案是用新创建的Guid替换重复的Guid(在VS中创建GUID工具或通过Guid.NewGuid())但我认为这并不容易。这个指导可能会从其他地方引用。

什么使用项目Guid?我知道它在解决方案文件中使用。还有其他一些?在溶液

回答

2

项目的定义,像这样:

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

project type GUID将是所有项目中的相同,而unique project GUID需要为每个项目唯一的。

这很重要,因为它在解决方案文件中用于指示构建配置。

理论上你可以自己替换GUID,但最好的方法是从解决方案中删除项目并再次添加它们。

+0

是的。重复的GUID是(通常)唯一的GUID。这些项目采用不同的解决方案,但我担心这可能会对其他方面产生影响。 (特别是如果我手动替换重复的GUID)我不能排除这种变化损害别的东西的可能性。除了解决方案以外,这种独特的GUID是否被使用? – user437899 2012-02-13 08:43:54

+1

不,唯一的GUID只有在给定解决方案的情况下才有意义。唯一的目的是将某些设置映射到独立于项目名称的项目。 因此,在不同的解决方案中共享相同的GUID的项目是不成问题的。 – 2012-02-13 08:49:42

+0

,直到您尝试在同一台机器上安装两个项目,并且GUID发生碰撞.... – 2012-05-04 19:20:11