lys*_*cid 30 msbuild visual-studio-2008 visual-studio
我们有一个VS2008解决方案,我注意到一些奇怪的事情:
一些项目引用在同一解决方案中定义的其他项目(添加为项目引用).这是在不久前完成的.
直接从VS建设工作正常.
从MSBUILD构建失败.
我删除了项目引用并重新添加它,我注意到项目的GUID已更改.现在可以使用MSBUILD构建.
问题是,我现在必须检查所有项目并验证这一点.
此外,我不知道为什么会发生这种情况(为什么项目GUID与以前不同,并且不确定是否会再次发生这种情况).
可能是什么原因造成的?
Ty *_* H. 33
我也在Visual Studio 2013中看到了这个问题,并且它不需要进行源代码控制集成.
当我在多个解决方案中拥有相同的项目时,偶尔会发生这种情况,每个解决方案都为该项目使用不同的GUID,并相应地更新项目.解决方案是手动修改.sln文件以使它们同步.这个答案归功于春生堂.
首先用记事本打开解决方案文件(.sln)并检查那里的项目引用.格式如下:
# Visual Studio 2005
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "WindowsApplication1", "WindowsApplication1\WindowsApplication1.csproj", "{9378D255-CE38-45CD-82FA-A1EBFB86FD6C}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ClassLibrary1", "ClassLibrary1\ClassLibrary1.csproj", "{DE374096-FF44-4FDF-B248-C767039B4175}"
EndProject
Run Code Online (Sandbox Code Playgroud)
每个项目的第二个GUID是对共享项目的引用.
要解决此问题,请为共享项目选择一个GUID; 确保打开它的所有解决方案都在其解决方案文件中具有相同的GUID.(请在进行这些更改之前备份您的文件)
Bog*_*SFT 13
由于与源控制系统(如TFS)集成,ProjectGuid发生了变化.例如,如果其他人打开文件,则会发生.
这里描述了解决方法:
http://social.msdn.microsoft.com/Forums/en-US/csharpide/thread/1d632940-cc1d-49d5-a64c-d3e999216cbd
对我来说,问题是解决方案文件之一中有重复的 GUID。在我的安装程序的 .sln 中,我发现配置项目 GUID(到处使用)和安装程序项目 GUID(特定于解决方案)是相同的。打开解决方案导致 VS 在项目文件中更改其中之一的 GUID,尽管在解决方案文件中没有明显显示。碰巧的是,它总是选择共同的那个,造成最大的悲伤。修复方法是为安装程序项目创建一个新的 GUID,然后手动将所有其他解决方案文件编辑回 Config 项目的正确 GUID。
我不知道这是怎么发生的,因为我从来没有复制项目来创建它们。
小智 5
解决方案文件从项目文件中获取项目 guid。您是否从早期版本的 VS 升级了解决方案/项目?如果解决方案文件中的 guid 一直在变化,可能是因为项目文件根本没有 guid,所以每次打开解决方案时,VS 都会补一个新的。我将其称为 VS 升级机制中的错误,但没有人问我。通过在您的项目文件中添加一个 guid 来解决这个问题,如下所示:
<PropertyGroup>
<ProjectGuid>{FB0F4A2A-1F78-42BF-8E31-E4FEFDC5565F}</ProjectGuid>
</PropertyGroup>
Run Code Online (Sandbox Code Playgroud)
再次打开解决方案,让项目 guid 最后一次更改为这个新的 guid。guid 永远不会再改变。
归档时间: |
|
查看次数: |
18492 次 |
最近记录: |