Ten typ projektu nie jest obsługiwany przez tę instalację


147

Za każdym razem, gdy próbuję otworzyć projekt (csproj)pobrany z Internetu, w większości przypadków otrzymuję plik

„Ten typ projektu nie jest obsługiwany przez tę instalację”

Wygląda na to, że moja instalacja Visual Studio nie jest uszkodzona (mogę z nią zrobić prawie wszystko, poza otwieraniem tych plików csproj)

Co może być tego przyczyną?


7
Chciałbym skomentować, że wydaje się, że istnieje wiele różnych przyczyn tego błędu. W moim przypadku musiałem ponownie zainstalować MVC3 RTM na maszynie budującej (która od jakiegoś czasu buduje projekty MVC3).
Mike Cheel

1
Podobnie jak w przypadku poprzedniego komentarza, używam VS2008 i nagle nie mogłem otworzyć projektu, nad którym pracuję od dłuższego czasu. Wreszcie ponownie zainstalowałem MVC2 i teraz może ponownie otworzyć projekt.
Sanjamal

@MikeCheel - Bardzo dziękuję za wskazówkę, sir. Podejrzewam, że w moim przypadku zainstalowałem MVC 3 przed zainstalowaniem VS 2010, w takim przypadku musiałem ponownie zainstalować MVC 3 (nie musiałem najpierw odinstalować). Kiedy poszedłem zainstalować MVC 3, okno dialogowe wyraźnie wskazywało, że będzie instalować MVC 3 dla VS 2010.
ADH

Odpowiedzi:


24

edytuj, zobacz odpowiedź poniżej , która jest o około 18 miesięcy nowsza i faktycznie rozwiązuje problem. Ta historycznie dokładna odpowiedź nie jest już tak dokładna. Z tego powodu pozostawiając nietknięte po przerwie. - dzięki - jcolebrand


Jakiej wersji VS używasz? VS2008 Express, Standard, Pro czy Team System? VS2010 Professional, Premium czy Ultimate? Spodziewałbym się, że pobrany projekt został utworzony przy użyciu wyższej wersji programu Visual Studio i korzysta z niektórych z tych zaawansowanych funkcji. Dlatego nie możesz go otworzyć.

EDYCJA: Możliwe też, że brakuje niektórych zaawansowanych frameworków, takich jak nowsze wersje Windows Mobile SDK, ale jeśli dobrze pamiętam, komunikat o błędzie w takim przypadku jest inny.


Cóż, to sprawia, że ​​pierwsze założenie jest znacznie mniej prawdopodobne, ponieważ jest to jedno z najwyższych wydań. Zgadzam się, że największą pomocą może być podanie linku do projektu. Możesz także otworzyć plik .sln za pomocą notatnika i sprawdzić pierwszą linię: jaka jest tam wersja formatu? Mam na myśli to, że projekt może zostać utworzony za pomocą VS 2010.
SergGr

Otrzymuję ten sam błąd, ale używam najnowszej wersji programu Visual Studio 2010. Wydaje się, że inny komputer z taką samą konfiguracją może poprawnie otwierać projekty. Jedyne, co przychodzi mi do głowy, to to, że niedawno odinstalowałem Visual Studio 2005. Uruchomienie devenv / setup i jak dotąd nie wydawało się to w ogóle pomagać.
jpierson,

1
Kind Element for Identifiers for Project (Visual Studio Project Policy) msdn.microsoft.com/en-us/library/hb23x61k(v=vs.80).aspx Napotkałem również ten problem. Pomyślałem, że podzielę się tym, bo to mi pomogło.
r3nrut

233

Otwórz plik .csproj dla rozwiązania w programie WordPad lub jakimś edytorze tekstu. Poszukaj ProjectTypeGuids. Wskazują wymagane obsługiwane typy dla Twoich rozwiązań. Wyszukaj w Internecie te identyfikatory GUID, aby dowiedzieć się, czego wymagają. Na przykład E53F8FEA-EAE0-44A6-8774-FFD645390401 oznacza, że ​​wymaga „MVC 3.0”


27
+1 - Moim problemem był brak MVC 3.0, więc dziękuję za ten post! Mogę być zbyt krótkowzroczny, ale można by pomyśleć, że program Visual Studio powinien być w stanie automatycznie określić na podstawie identyfikatorów GUID, czego brakuje, zamiast wyświetlać standardowy komunikat o błędzie.
JOpuckman


2
jesteś absolutną legendą, pomyślałbym, że MVC3 zostałby uwzględniony w dodatku Service Pack lub czymś w tym rodzaju, lub VS mógłby przynajmniej dać ci przydatny komunikat o błędzie.
David Swindells

1
Jeśli masz zainstalowany MVC 4, ale nie MVC 3, możesz zamienić przykładowy identyfikator GUID w tej odpowiedzi na {E3E379DF-F4C6-4180-9B81-6769533ABE47}. Zobacz ASP.NET MVC 4 przerywa projekty ASP.NET MVC 3 .
R. Schreurs,

3
Znajdź dobrą listę identyfikatorów GUID w codeproject: - codeproject.com/Reference/720512/ ...
Atur

16

Dla Visual Studio 2010 (prawdopodobnie także dla innych wersji):

Jeśli otwierasz projekt ASP.NET MVC, upewnij się, że na komputerze jest zainstalowana poprawna wersja MVC. Jeśli spróbujesz otworzyć projekt ASP.NET MVC 3 , najpierw zamknij wszystkie wystąpienia Visual Studio i zainstaluj MVC3: http://www.microsoft.com/en-us/download/details.aspx?id=1491

W przypadku innych wersji ASP.NET MVC pobierz je ze strony www.asp.net/mvc lub za pośrednictwem Instalatora platformy sieci Web 4.0.


3
To samo dzieje się ze mną, ale w tym przypadku próbowałem otworzyć projekt ASP.NET MVC 4 bez jego zainstalowania. Możesz pobrać i zainstalować MVC4 z microsoft.com/en-us/download/details.aspx?id=30683
pocjoc

Mam już zainstalowany MVC 3, ale nie został on zainstalowany w programie Visual Studio 2010 . Musiałem zainstalować go specjalnie w VS 2010.
Shaun Luttin,

12

Zamiast wyszukiwać identyfikatory GUID, możesz po prostu usunąć tagi GUIds. Następnie spróbuj ponownie otworzyć projekt. Przy drugim otwarciu powinieneś otrzymać bardziej rozsądny komunikat o błędzie.

Na przykład moim problemem było to, że nie zainstalowałem narzędzi programistycznych SharePoint podczas instalowania programu Visual Studio 2010 na mojej wirtualnej maszynie deweloperskiej. Kiedy więc próbowałem otworzyć projekt po usunięciu identyfikatorów GUID, VS2010 powiedział mi, że ścieżka, której szukał, nie istnieje.

Dlatego VS2010 szukał biblioteki SharePoint, która nie została zainstalowana. Po prostu musiałem ponownie uruchomić instalację, a następnie dodać tę funkcję.


2
+1 Dzięki, to wszystko dla mnie. Po prostu usunąłem cały <ProjectTypeGuids> {E3E379DF-F4C6-4180-9B81-6769533ABE47}; {349c5851-65df-11da-9384-00065b846f21}; {fae04ec0-301f-11d3-bf4b-00c04f79efbcype} </uids. Te 3 identyfikatory GUID oznaczały, że jest to aplikacja C # Web MVC 4.0 i była w stanie to rozwiązać bez węzła.
Ralph Lavelle

@Daniel Byrne - nad projektem pracuję od roku i nagle mam do czynienia z tym problemem. Próbowałem usunąć identyfikatory GUID i projekt został pomyślnie załadowany, ale daje wyjątek podczas uruchamiania „Nie można załadować coredll.dll”. Należy pamiętać, że urządzenie klienckie działa pod kontrolą systemu Windows CE, proszę o pomoc
RSB

9

Wystąpił ten sam problem z „Typ projektu nie jest obsługiwany przez tę instalację” dla projektów internetowych w VS 2010 Premium.

devenv / ResetSkipPkgs

a magia identyfikatorów GUID nie pomogła.

Te same projekty działały dobrze na sąsiednim skrzynce z VS 2010 Premium.

Jak się okazało, jedyną różnicą było to, że w mojej instalacji VS brakowało następujących zainstalowanych produktów (można je znaleźć w oknie dialogowym VS About):

  • Narzędzia deweloperskie pakietu Microsoft Office
  • Microsoft Visual Studio 2010 SharePoint Developer Tools

Dodaj / usuń programy -> VS 2010 -> Dostosuj -> Sprawdź powyższe produkty - i problem został rozwiązany.


5

Miałem ten sam problem z otwieraniem rozwiązania NuGet w VS 2010 Ultimate, ale rozwiązało go następujące polecenie:

devenv /ResetSkipPkgs

5

Jeśli używasz VS 2010 i jest to projekt ASP.NET, upewnij się, że masz zainstalowany program Visual Developer z dysku CD VS 2010. To nie jest darmowe, ale część tego, co jest wymagane do pracy nad projektami ASP.NET w programie Visual Studio.


Z jakiegoś powodu narzędzia VWD 2010 powstrzymywały mnie przed zainstalowaniem tej aktualizacji
Dai Bok,

3

Możesz także spróbować uruchomić następujące polecenie:

devenv /ResetSkipPkgs

musisz oczywiście znajdować się w odpowiednim katalogu, aby faktycznie uruchomić devenv, lub mieć to na swojej drodze
Tom,


2

Miałem podobny problem z c #, najpierw odkryłem, że każdy projekt może mieć kilka różnych typów. tj. w pliku .csproject zlokalizuj ProjectTypeGuids, powinno być kilka poradników, tj

<ProjectTypeGuids>{F85E285D-A4E0-4152-9332-AB1D724D3325};{349c5851-65df-11da-9384-00065b846f21};{fae04ec0-301f-11d3-bf4b-00c04f79efbc}</ProjectTypeGuids>

wskażą na brakujący element. W moim przypadku był to ASP.NET MVC 2. Niektórzy załatwili to po zainstalowaniu destribution MVC 2.

Mój przypadek był gorszy, ponieważ instalacja nie działała, ale okazało się, że to dlatego, że miałem Express 2008 i 2010. Naprawiłem to, odinstalowując oba 2008 i 2010 i instalując tylko wersje 2010. W przypadku języka C # potrzebujesz zarówno Visual C # Express, jak i Visual Web Developer Express


1

Można to również napotkać podczas próby otwarcia projektu ASP.Net MVC, gdy nie masz zainstalowanego ASP.Net MVC z programem Visual Studio 2010. W moim przypadku był to ASP.Net MVC 3.0


1

Oprócz tego komunikat „typ projektu nie jest obsługiwany przez tę instalację” może wystąpić, jeśli próbujesz otworzyć projekt na komputerze, który nie zawiera docelowej wersji platformy.

W moim przypadku próbowałem otworzyć bibliotekę klas, która została utworzona na komputerze z VS2012 i domyślnie ustawiła docelową strukturę na 4.5. Ponieważ wiedziałem, że ta biblioteka nie używa żadnych 4,5-bitowych bitów, rozwiązałem problem, edytując plik .csproj z <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>do <TargetFrameworkVersion>v4.0</TargetFrameworkVersion>(lub cokolwiek innego, co jest odpowiednie dla twojego projektu) i otwarto bibliotekę.


1

Moje problemy, ponieważ ta linia w projekcie (.csproj) ma nową linię (vs2010)

<ProjectTypeGuids>
</ProjectTypeGuids>

Kiedy aktualizuję do

<ProjectTypeGuids></ProjectTypeGuids>

Mogę ponownie otworzyć


0

Miałem ten problem podczas próby dodania projektu WPF w rozwiązaniu WCF w Visual Studio Express 2012 dla sieci Web. Usunięcie zawartości między tagami „ProjectTypeGuids” i pozostawienie samych tagów rozwiązało problem. Aby dowiedzieć się, jak edytować plik .csproj, przeczytaj komentarz MindStalker.


0

Problem dla mnie polegał na tym, że mój ProjectTypeGuid był MVC4, ale nie miałem go zainstalowanego na serwerze docelowym. Rozwiązaniem była zmiana ProjectTypeGuids na bibliotekę klas i dołączenie bibliotek DLL MVC do projektu, a nie projektu, aby je odebrać z GAC.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.