Příznaky
Při pokusu o generovat informace o typu knihovny pomocí Microsoft.VisualStudio.Shell.Interop.dll sestavení v aplikaci Microsoft Visual Studio 2008 se může vyskytnout některý z následujících příznaků.
Příznak 1
Pokud použijete nástroj Regasm.exe generovat a zaregistrovat knihovnu typů, může se zobrazit následující chybová zpráva:
Modul RegAsm: Chyba RA000: typ Exportér knihovny došlo k chybě při zpracování "Microsoft.VisualStudio.Shell.Interop.SVsSolutionObject Microsoft.VisualStudio.Shell.Interop". Chyba: Zadejte 'SVsSolutionObject' a 'SVsSolution' mají oba stejné UUID.
Příznak 2
Pokud použijete nástroj TlbExp.exe generovat knihovny typů, můžete obdržet následující chybovou zprávu:
TlbExp: Chyba TX0000: typ Exportér knihovny došlo k chybě při zpracování 'Microsoft.VisualStudio.Shell.Interop.SVsSolutionObject Microsoft.VisualStudio.Shell.Interop'. Chyba: Zadejte 'SVsSolutionObject' a 'SVsSolution' mají oba stejné UUID.
Příznak 3
Balíček sady Visual Studio 2008 implementuje kolekce vlastností, který je vystaven pomocí vlastnost EnvDTE.DTE.Properties . Pokud kolekce je členem objektu, který používá typ ze sestavení Microsoft.VisualStudio.Shell.Interop.dll , nevytvoří společný jazykový modul runtime (CLR) pro sestavení knihovny typů nezbytné v paměti. Například následující makro aplikace Visual Studio, který odkazuje na vlastnost EnvDTE.DTE.Properties nezdaří a potom zobrazí chybová zpráva.
Dim proj As Project = DTE.Solution.Projects.Item(1) Dim props As Properties = proj.ConfigurationManager.ActiveConfiguration.Properties
Příčina
K tomuto problému dochází, protože atribut ImportedFromTypelib odebrána ze sestavení Microsoft.VisualStudio.Shell.Interop.dll v Visual Studio 2008. Atribut ImportedFromTypelib odebrána, protože toto sestavení nemá přidružený typ knihovny. Atribut ImportedFromTypelib tedy způsobuje selhání při pokusí najít knihovnu přidružený typ CLR.
Protože ImportedFromTypelib atributu byla odebrána v Visual Studio 2008, CLR nelze vytvořit nezbytné v paměti typ knihovny pro sestavení Microsoft.VisualStudio.Shell.Interop.dll . Tato chyba je způsobena typ duplicitní identifikátory GUID.
Řešení
Informace o opravě hotfix
Společnost Microsoft má k dispozici podporovanou opravu hotfix. Tato oprava hotfix je však určena pouze problému popsanému v tomto článku. Použití této opravy hotfix pouze u systémů, ve kterých dochází k tomuto konkrétnímu problému. Tato oprava hotfix může být dále testována. Proto pokud nejste vážně ohrožen tímto problémem, doporučujeme počkat na další aktualizaci softwaru, která obsahuje tuto opravu hotfix.
Chcete-li stáhnout tuto opravu hotfix z Galerie kódu MSDN, navštivte následující Web společnosti Microsoft:
http://code.msdn.microsoft.com/KB946308
Poznámka: Galerie kódu MSDN zobrazí jazyky, pro které je oprava hotfix k dispozici. Pokud není uveden jazyk, je protože zdroj stránky galerie kód není k dispozici pro daný jazyk.
Poznámka: Pokud nastanou další problémy nebo bude nutné další řešení potíží, bude možná třeba vytvořit další samostatný požadavek na služby. Běžná cena za technickou podporu se vztahuje k dodatečným otázkám podpory a k problémům, které se netýkají této konkrétní opravy hotfix. Úplný seznam telefonních čísel služeb zákazníkům společnosti Microsoft a podpoře nebo vytvořit zvláštní požadavek na službu naleznete na následujícím webu společnosti Microsoft:
http://support.microsoft.com/contactus/?ws=support
Předpoklady
Musíte mít Visual Studio 2008 nainstalován použitím této opravy hotfix.
Požadavek na restartování
Po instalaci této opravy hotfix nemusíte restartovat počítač.
Informace o nahrazení opravy hotfix
Tato oprava hotfix nenahrazuje dříve vydanou opravu hotfix.
Informace o souborech
Anglická verze této opravy hotfix má atributy (nebo pozdější atributy souborů) uvedené v následující tabulce. Kalendářní data a časy jednotlivých souborů jsou uvedeny v koordinovaném světovém čase (UTC). Při zobrazení informací o souboru je převeden na místní čas. Rozdíl mezi místním časem a časem UTC naleznete na kartě Časové pásmo v položce Datum a čas v okně Ovládací panely.
Název souboru |
Verze souboru |
Velikost souboru |
Datum |
Čas |
Platforma |
---|---|---|---|---|---|
Microsoft.VisualStudio.Shell.Interop.dll |
7.10.6071.0 |
259152 |
07-Jan-2008 |
15:37 |
x86 |
Stav
Společnost Microsoft potvrdila, že se jedná o problém v produktech společnosti Microsoft, které jsou uvedeny v části "Platí pro".
Další informace
Tato oprava hotfix označí duplicitní GUID podle nastavením hodnoty ComVisible vlastnost na hodnotu false, takže generátor typ knihovny bude ignorovat duplicitní GUID.
Pro další informace o terminologii používané v aktualizacích softwaru, klepněte na následující číslo článku k zobrazení článku v databázi Microsoft Knowledge Base:
824684 Popis standardní terminologie používané při popisu aktualizací softwaru společnosti Microsoft