可以将文章内容翻译成中文,广告屏蔽插件可能会导致该功能失效(如失效,请关闭广告屏蔽插件后再试):
问题:
Whenever I try to open a project (csproj)
that's downloaded from the internet, most of the times, I get the
"The project type is not supported by this installation"
It appears that my Visual Studio installation is not corrupted (I can pretty much do everything with it other than open these csproj files)
What may be causing this?
回答1:
edit please see the answer further down, which is about 18 months newer, and actually solves the problem. This historically once-accurate answer is no longer as accurate. Leaving intact after the break for this reason. - thanks - jcolebrand
What edition of VS do you use? VS2008 Express, Standard, Pro or Team System? VS2010 Professional, Premium or Ultimate? I would expect that the project you downloaded was created using a higher edition of Visual Studio and uses some of those advanced features. Thus you can not open it.
EDIT: It is also possible that you lack some advanced frameworks like newer versions of Windows Mobile SDK, but if I recall correctly,the error message in such case is different.
回答2:
Open up the .csproj file for your solution in wordpad or some text editor. Look for the ProjectTypeGuids. They indicate the required supported types for your solutions. Search the internet these GUIDs to find out what they require. For example E53F8FEA-EAE0-44A6-8774-FFD645390401 means it requires "MVC 3.0"
回答3:
For Visual Studio 2010 (prolly also for other versions):
If you are opening an ASP.NET MVC project make sure that the correct MVC version is installed on your PC.
If you try to open an ASP.NET MVC 3 project, first close all your visual studio instances and install MVC3: http://www.microsoft.com/en-us/download/details.aspx?id=1491
For other ASP.NET MVC versions download them from www.asp.net/mvc or via Web Platform Installer 4.0.
回答4:
Instead of searching fr the GUIDs, you can simply delete the GUIds tags. Then try opening the project again. The second time opening you should get a more reasonable error message.
For instance my issue was that I did not install SharePoint Developer Tools when I installed Visual Studio 2010 on my development Virtual Machine. So when I tried opennign the project after deleting the GUIDs, VS2010 told me the path it was looking for did not exist.
Therefore VS2010 was looking for a SharePoint library that was not installed. I simply had to run the install again, and then add that feature.
回答5:
Had the same issue with "The project type is not supported by this installation" for web projects in VS 2010 Premium.
devenv /ResetSkipPkgs
and GUIDs magic did not help.
Same projects were working fine on a neighbor box with VS 2010 Premium.
As it turned out the only difference was that my VS installation was missing the following installed products (can be found in VS About dialog):
- Microsoft Office Developer Tools
- Microsoft Visual Studio 2010 SharePoint Developer Tools
Add/Remove programs -> VS 2010 -> Customize -> Check the above products - and the problem was solved.
回答6:
I had the same problem opening the NuGet solution with VS 2010 Ultimate, but the following command fixed it:
devenv /ResetSkipPkgs
回答7:
If you are using VS 2010 and it is a ASP.NET project make sure you have the Visual Developer installed from the VS 2010 CD. This is not the free one, but part of what is required to work on ASP.NET projects in Visual Studio.
回答8:
You could also try to run the following command:
devenv /ResetSkipPkgs
回答9:
You might need to install the "Microsoft Web Platform Installer" from http://www.microsoft.com/web/downloads/platform.aspx
回答10:
I had similar issue with c#, first I found that each project may have a few different types. i.e. in .csproject file locate ProjectTypeGuids, it should be a few guids, i.e.
<ProjectTypeGuids>{F85E285D-A4E0-4152-9332-AB1D724D3325};{349c5851-65df-11da-9384-00065b846f21};{fae04ec0-301f-11d3-bf4b-00c04f79efbc}</ProjectTypeGuids>
they will point on component you are missing. In my case it was ASP.NET MVC 2. Some guys get it worked by installing MVC 2 destribution.
My case was worse, because installation didn't work, but it turned out that it was because I had Express 2008 and 2010. I fixed it by uninstalling both 2008 & 2010 and installing only 2010 versions. For c# you need both Visual C# Express and Visual Web Developer express
回答11:
This can also be encountered while trying to open an ASP.Net MVC project while you don't have ASP.Net MVC installed with your Visual Studio 2010. In my case it was ASP.Net MVC 3.0
回答12:
As a addition to this, 'the project type is not supported by this installation' can occur if you're trying to open a project on a computer which does not contain the framework version that is targeted.
In my case I was trying to open a class library which was created on a machine with VS2012 and had defaulted the targeted framework to 4.5.
Since I knew this library wasn't using any 4.5 bits, I resolved the issue by editing the .csproj file from <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>
to <TargetFrameworkVersion>v4.0</TargetFrameworkVersion>
(or whatever is appropriate for your project) and the library opened.
回答13:
My problems because this line in project (.csproj) has newline (vs2010)
<ProjectTypeGuids>
</ProjectTypeGuids>
When i update to
<ProjectTypeGuids></ProjectTypeGuids>
I can open again
回答14:
I was having this problem trying to add a WPF project in a WCF solution in Visual Studio Express 2012 for Web.
Deleting the content between the "ProjectTypeGuids" tags and leaving only the tags solved the problem. To know how to edit the .csproj file, read MindStalker comment.
回答15:
Problem for me was my ProjectTypeGuid was MVC4 but I didn't have that installed on the target server. The solution was to change the ProjectTypeGuids to that of a Class Library, and include the MVC DLLs with the project rather than the project pick them up from the GAC.