75

我在单个 Visual Studio (2008) 解决方案中有多个项目。
我刚刚发现这些项目中的每一个都使用相同的 GUID,所以在解决方案文件中它看起来像这样:

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

我是否必须更改这些 GUID,使它们独一无二,它们的用途是什么?

4

5 回答 5

81

解决方案文件中的项目持久性块具有以下格式:

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

因此,预计第一个 GUID 是非唯一的,它唯一标识处理此类项目的 Visual Studio 包。

您发布的 GUID 很有趣 - 它看起来像损坏的 C# 项目 GUID,即 FAE04EC0-301F-11D3-BF4B-00C04F79EFBC。您是自己更改还是发布问题(例如,您使用的是从右到左的语言环境,例如希伯来语或阿拉伯语)。

于 2010-02-24T18:57:46.173 回答
25

第一个 GUID 是项目类型。可以在此处找到项目类型 GUID:

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

从链接:


创建 Visual Studio 项目后,没有一种简单的方法可以更改项目的类型;例如,将 C# 类库更改为可移植类库 (PCL)。了解这些 GUID 将允许您编辑 .csproj 和 .vbproj 等项目文件,以便在 Visual Studio 不允许使用 GUI 的情况下轻松更改项目类型。

按描述/项目类型:

+------------------------------------------------+----------------------------------------+
|                  Project Type                  |                 GUID        
+------------------------------------------------+----------------------------------------+
| .NET Core                                      | {9A19103F-16F7-4668-BE54-9A1E7A4F7556} |
| ASP.NET 5                                      | {8BB2217D-0F2D-49D1-97BC-3654ED321F3B} |
| ASP.NET MVC 1                                  | {603C0E0B-DB56-11DC-BE95-000D561079B0} |
| ASP.NET MVC 2                                  | {F85E285D-A4E0-4152-9332-AB1D724D3325} |
| ASP.NET MVC 3                                  | {E53F8FEA-EAE0-44A6-8774-FFD645390401} |
| ASP.NET MVC 4                                  | {E3E379DF-F4C6-4180-9B81-6769533ABE47} |
| ASP.NET MVC 5                                  | {349C5851-65DF-11DA-9384-00065B846F21} |
| C#                                             | {FAE04EC0-301F-11D3-BF4B-00C04F79EFBC} |
| C++                                            | {8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942} |
| Database                                       | {A9ACE9BB-CECE-4E62-9AA4-C7E7C5BD2124} |
| Database (other project types)                 | {4F174C21-8C12-11D0-8340-0000F80270F8} |
| Deployment Cab                                 | {3EA9E505-35AC-4774-B492-AD1749C4943A} |
| Deployment Merge Module                        | {06A35CCD-C46D-44D5-987B-CF40FF872267} |
| Deployment Setup                               | {978C614F-708E-4E1A-B201-565925725DBA} |
| Deployment Smart Device Cab                    | {AB322303-2255-48EF-A496-5904EB18DA55} |
| Distributed System                             | {F135691A-BF7E-435D-8960-F99683D2D49C} |
| Dynamics 2012 AX C# in AOT                     | {BF6F8E12-879D-49E7-ADF0-5503146B24B8} |
| F#                                             | {F2A71F9B-5D33-465A-A702-920D77279786} |
| J#                                             | {E6FDF86B-F3D1-11D4-8576-0002A516ECE8} |
| Legacy (2003) Smart Device (C#)                | {20D4826A-C6FA-45DB-90F4-C717570B9F32} |
| Legacy (2003) Smart Device (VB.NET)            | {CB4CE8C6-1BDB-4DC7-A4D3-65A1999772F8} |
| Micro Framework                                | {b69e3092-b931-443c-abe7-7e7b65f2a37f} |
| Model-View-Controller v2 (MVC 2)               | {F85E285D-A4E0-4152-9332-AB1D724D3325} |
| Model-View-Controller v3 (MVC 3)               | {E53F8FEA-EAE0-44A6-8774-FFD645390401} |
| Model-View-Controller v4 (MVC 4)               | {E3E379DF-F4C6-4180-9B81-6769533ABE47} |
| Model-View-Controller v5 (MVC 5)               | {349C5851-65DF-11DA-9384-00065B846F21} |
| Mono for Android                               | {EFBA0AD7-5A72-4C68-AF49-83D382785DCF} |
| MonoTouch                                      | {6BC8ED88-2882-458C-8E55-DFD12B67127B} |
| MonoTouch Binding                              | {F5B4F3BC-B597-4E2B-B552-EF5D8A32436F} |
| Portable Class Library                         | {786C830F-07A1-408B-BD7F-6EE04809D6DB} |
| Project Folders                                | {66A26720-8FB5-11D2-AA7E-00C04F688DDE} |
| Service Fabric Application (.sfproj)           | {A07B5EB6-E848-4116-A8D0-A826331D98C6} |
| SharePoint (C#)                                | {593B0543-81F6-4436-BA1E-4747859CAAE2} |
| SharePoint (VB.NET)                            | {EC05E597-79D4-47f3-ADA0-324C4F7C7484} |
| SharePoint Workflow                            | {F8810EC1-6754-47FC-A15F-DFABD2E3FA90} |
| Silverlight                                    | {A1591282-1198-4647-A2B1-27E5FF5F6F3B} |
| Smart Device (C#)                              | {4D628B5B-2FBC-4AA6-8C16-197242AEB884} |
| Smart Device (VB.NET)                          | {68B1623D-7FB9-47D8-8664-7ECEA3297D4F} |
| Solution Folder                                | {2150E333-8FDC-42A3-9474-1A3956D46DE8} |
| Test                                           | {3AC096D0-A1C2-E12C-1390-A8335801FDAB} |
| Universal Windows Class Library                | {A5A43C5B-DE2A-4C0C-9213-0A381AF9435A} |
| VB.NET                                         | {F184B08F-C81C-45F6-A57F-5ABD9991F28F} |
| Visual Database Tools                          | {C252FEB5-A946-4202-B1D4-9916A0590387} |
| Visual Studio 2015 Installer Project Extension | {54435603-DBB4-11D2-8724-00A0C9A8B90C} |
| Visual Studio Tools for Applications (VSTA)    | {A860303F-1F3F-4691-B57E-529FC101A107} |
| Visual Studio Tools for Office (VSTO)          | {BAA0C2D2-18E2-41B9-852F-F413020CAA33} |
| Web Application                                | {349C5851-65DF-11DA-9384-00065B846F21} |
| Web Site                                       | {E24C65DC-7377-472B-9ABA-BC803B73C61A} |
| Windows (C#)                                   | {FAE04EC0-301F-11D3-BF4B-00C04F79EFBC} |
| Windows (VB.NET)                               | {F184B08F-C81C-45F6-A57F-5ABD9991F28F} |
| Windows (Visual C++)                           | {8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942} |
| Windows Communication Foundation (WCF)         | {3D9AD99F-2412-4246-B90B-4EAA41C64699} |
| Windows Phone 8/8.1 Blank/Hub/Webview App      | {76F1466A-8B6D-4E39-A767-685A06062A39} |
| Windows Phone 8/8.1 App (C#)                   | {C089C8C0-30E0-4E22-80C0-CE093F111A43} |
| Windows Phone 8/8.1 App (VB.NET)               | {DB03555F-0C8B-43BE-9FF9-57896B3C5E56} |
| Windows Presentation Foundation (WPF)          | {60DC8134-EBA5-43B8-BCC9-BB4BC16C2548} |
| Windows Store (Metro) Apps & Components        | {BC8A1FFA-BEE3-4634-8014-F334798102B3} |
| Workflow (C#)                                  | {14822709-B5A1-4724-98CA-57A101D1B079} |
| Workflow (VB.NET)                              | {D59BE175-2ED0-4C54-BE3D-CDAA9F3214C8} |
| Workflow Foundation                            | {32F31D43-81CC-4C15-9DE6-3FC5453562B6} |
| Xamarin.Android                                | {EFBA0AD7-5A72-4C68-AF49-83D382785DCF} |
| Xamarin.iOS                                    | {6BC8ED88-2882-458C-8E55-DFD12B67127B} |
| XNA (Windows)                                  | {6D335F3A-9D43-41b4-9D22-F6F17C4BE596} |
| XNA (XBox)                                     | {2DF5C3F4-5A5F-47a9-8E94-23B4456F55E2} |
| XNA (Zune)                                     | {D399B71A-8929-442a-A9AC-8BEC78BB2433} |
+------------------------------------------------+----------------------------------------+

按 GUID:

+------------------------------------------------+----------------------------------------+
|                  Project Type                  |                 GUID  
+------------------------------------------------+----------------------------------------+
| Deployment Merge Module                        | {06A35CCD-C46D-44D5-987B-CF40FF872267} |
| Workflow (C#)                                  | {14822709-B5A1-4724-98CA-57A101D1B079} |
| Legacy (2003) Smart Device (C#)                | {20D4826A-C6FA-45DB-90F4-C717570B9F32} |
| Solution Folder                                | {2150E333-8FDC-42A3-9474-1A3956D46DE8} |
| XNA (XBox)                                     | {2DF5C3F4-5A5F-47a9-8E94-23B4456F55E2} |
| Workflow Foundation                            | {32F31D43-81CC-4C15-9DE6-3FC5453562B6} |
| Web Application (incl. MVC 5)                  | {349C5851-65DF-11DA-9384-00065B846F21} |
| Test                                           | {3AC096D0-A1C2-E12C-1390-A8335801FDAB} |
| Windows Communication Foundation (WCF)         | {3D9AD99F-2412-4246-B90B-4EAA41C64699} |
| Deployment Cab                                 | {3EA9E505-35AC-4774-B492-AD1749C4943A} |
| Smart Device (C#)                              | {4D628B5B-2FBC-4AA6-8C16-197242AEB884} |
| Database (other project types)                 | {4F174C21-8C12-11D0-8340-0000F80270F8} |
| Visual Studio 2015 Installer Project Extension | {54435603-DBB4-11D2-8724-00A0C9A8B90C} |
| SharePoint (C#)                                | {593B0543-81F6-4436-BA1E-4747859CAAE2} |
| ASP.NET MVC 1.0                                | {603C0E0B-DB56-11DC-BE95-000D561079B0} |
| Windows Presentation Foundation (WPF)          | {60DC8134-EBA5-43B8-BCC9-BB4BC16C2548} |
| Smart Device (VB.NET)                          | {68B1623D-7FB9-47D8-8664-7ECEA3297D4F} |
| Project Folders                                | {66A26720-8FB5-11D2-AA7E-00C04F688DDE} |
| MonoTouch                                      | {6BC8ED88-2882-458C-8E55-DFD12B67127B} |
| XNA (Windows)                                  | {6D335F3A-9D43-41b4-9D22-F6F17C4BE596} |
| Windows Phone 8/8.1 Blank/Hub/Webview App      | {76F1466A-8B6D-4E39-A767-685A06062A39} |
| Portable Class Library                         | {786C830F-07A1-408B-BD7F-6EE04809D6DB} |
| ASP.NET 5                                      | {8BB2217D-0F2D-49D1-97BC-3654ED321F3B} |
| C++                                            | {8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942} |
| Deployment Setup                               | {978C614F-708E-4E1A-B201-565925725DBA} |
| .NET Core                                      | {9A19103F-16F7-4668-BE54-9A1E7A4F7556} |
| Service Fabric Application (.sfproj)           | {A07B5EB6-E848-4116-A8D0-A826331D98C6} |
| Silverlight                                    | {A1591282-1198-4647-A2B1-27E5FF5F6F3B} |
| Universal Windows Class Library                | {A5A43C5B-DE2A-4C0C-9213-0A381AF9435A} |
| Visual Studio Tools for Applications (VSTA)    | {A860303F-1F3F-4691-B57E-529FC101A107} |
| Database                                       | {A9ACE9BB-CECE-4E62-9AA4-C7E7C5BD2124} |
| Deployment Smart Device Cab                    | {AB322303-2255-48EF-A496-5904EB18DA55} |
| Micro Framework                                | {B69E3092-B931-443C-ABE7-7E7B65F2A37F} |
| Visual Studio Tools for Office (VSTO)          | {BAA0C2D2-18E2-41B9-852F-F413020CAA33} |
| Windows Store Apps (Metro Apps)                | {BC8A1FFA-BEE3-4634-8014-F334798102B3} |
| C# in Dynamics 2012 AX AOT                     | {BF6F8E12-879D-49E7-ADF0-5503146B24B8} |
| Windows Phone 8/8.1 App (C#)                   | {C089C8C0-30E0-4E22-80C0-CE093F111A43} |
| Visual Database Tools                          | {C252FEB5-A946-4202-B1D4-9916A0590387} |
| Legacy (2003) Smart Device (VB.NET)            | {CB4CE8C6-1BDB-4DC7-A4D3-65A1999772F8} |
| XNA (Zune)                                     | {D399B71A-8929-442a-A9AC-8BEC78BB2433} |
| Workflow (VB.NET)                              | {D59BE175-2ED0-4C54-BE3D-CDAA9F3214C8} |
| Windows Phone 8/8.1 App (VB.NET)               | {DB03555F-0C8B-43BE-9FF9-57896B3C5E56} |
| Web Site                                       | {E24C65DC-7377-472B-9ABA-BC803B73C61A} |
| ASP.NET MVC 4.0                                | {E3E379DF-F4C6-4180-9B81-6769533ABE47} |
| ASP.NET MVC 3.0                                | {E53F8FEA-EAE0-44A6-8774-FFD645390401} |
| J#                                             | {E6FDF86B-F3D1-11D4-8576-0002A516ECE8} |
| SharePoint (VB.NET)                            | {EC05E597-79D4-47f3-ADA0-324C4F7C7484} |
| Xamarin.Android / Mono for Android             | {EFBA0AD7-5A72-4C68-AF49-83D382785DCF} |
| Distributed System                             | {F135691A-BF7E-435D-8960-F99683D2D49C} |
| VB.NET                                         | {F184B08F-C81C-45F6-A57F-5ABD9991F28F} |
| F#                                             | {F2A71F9B-5D33-465A-A702-920D77279786} |
| MonoTouch Binding                              | {F5B4F3BC-B597-4E2B-B552-EF5D8A32436F} |
| ASP.NET MVC 2.0                                | {F85E285D-A4E0-4152-9332-AB1D724D3325} |
| SharePoint Workflow                            | {F8810EC1-6754-47FC-A15F-DFABD2E3FA90} |
| C#                                             | {FAE04EC0-301F-11D3-BF4B-00C04F79EFBC} |
+------------------------------------------------+----------------------------------------+

注意:您会发现这些属性是<ProjectTypeGuids>项目文件中的一个元素,不要与<ProjectGuid>哪个是项目的唯一标识符相混淆。

一些 GUID 组合使用。例如,<ProjectTypeGuids>{EFBA0AD7-5A72-4C68-AF49-83D382785DCF};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>用 C# 描述 Xamarin.Android 库。

于 2015-03-07T04:27:01.877 回答
24

我经常会复制一个 VS 项目文件,重命名它并搜索并替换所有出现的项目名称,以创建一个具有相同设置的新项目。这通常比创建一个新项目然后确保所有设置都正确更快。我忽略了 GUID。将项目添加到解决方案后,VS 将在我保存项目后立即更改 GUID。

我做了很多 DLL/C/C++ 开发,多年来我已经广泛偏离标准项目设置(特别是在优化、代码生成等方面),我发现复制技术是一种更快、更可靠的设置方法项目。

于 2013-06-26T16:31:20.370 回答
5

csproj 文件中的项目 guid 应该是唯一的。根据我的经验,如果两个 csproj 文件包含在同一个解决方案中,visual studio 会自动重新生成其中一个 guid。

于 2010-02-24T16:03:15.690 回答
1

明智的话:如果制作 XBOX360 XNA 4.0 项目并尝试这个技巧,不要使用 VS 2012 生成的 guid。在 VS2010 中生成一个并使用它

或者,当您尝试在 XNA Game Studio Connect 中运行重新引导的项目时,您将收到以下错误。

“这个游戏丢失或损坏,等等,重新启动XNA Game Studio Connect?”

然后它会爆炸。VS 2010 指南工作正常。我不知道为什么。

于 2014-07-01T13:28:00.473 回答