Úvod do rozšíření projektu

objekt model je k dispozici prostým přidáním odkazů na sestavení VSLangProj projekt: VSLangProj.dll, VSLangProj2.dll, VSLangProj80.dll, VSLangProj90a.dll a VSLangProj100.dll sestavení.Další informace naleznete v tématu Postupy: Přidání nebo odebrání odkazů pomocí dialogového okna Přidat odkaz.Znamená, že je k dispozici pro doplňky a jakýkoli typ projekt , který se musí rozšířit nebo automatizovat IDE objekt model.Příklady v tématech jsou napsány Visual Basic a Visual C# jazyky.Další informace o spuštění příkladů, viz Postupy: Kompilace a spuštění příkladů kódu objektu automatizace.Doplňky mohou být napsány v libovolné Visual Studio jazyka, jako například hostitelem Visual Basic, Visual C#, a Visual C++.Témata pro odkazovat se VSLangProj, VSLangProj2, VSLangProj80, VslangProj90 a VslangProj100 členů zahrnují syntaxe pro každý z těchto jazyků.Popis typů projekt automatizace a možností automatizace najdete Vytváření doplňků a průvodců.

Obory názvů VSLangProj

Tyto obory názvů obsahovat všechny třídy, rozhraní a vyčíslení pro Visual Basic a Visual C# projekty.Úplný seznam objektů v obor názvů, viz Model objektů rozšíření Visual Basic a Visual C# pro projekty.

Možné chyby pomocí sestavení VSLangProj s EnvDTE sestavení

Pokud je vytvořit projekt odkazuje na jednu nebo více sestavení VSLangProj a EnvDTE sestaveníobčas si následující chyba za běhu:

"Nezpracovaná výjimka: System.IO.FileNotFoundException: Chyba při načítání souboru ' EnvDTE verze = 7.0.3300.0"

Tato chyba je způsobena konflikt rozlišení typu runtime.verze EnvDTE se Visual Studio 2005 je 8.0.xx, ale konfigurace projektodkazovat se hledá starší verze sestavení, verze 7.0.xx. Chcete-li tento problém vyřešit, je nutné přidat přesměrování vazby pro novější verze programu EnvDTE konfigurace (.config) souboru projekt.To umožní Visual Studio načíst novější verze programu EnvDTE a chyba předejít.

To provedete přidáte "Konfigurační soubor aplikace" k projekt a potom nahradit jeho obsah s následující:

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
    <runtime>
        <assemblyBinding xmlns="urn:schemas-microsoft-
        com:asm.v1" appliesTo="v2.0.50318">
            <dependentAssembly>
                <assemblyIdentity name="EnvDTE" publicKeyToken=
                "b03f5f7f11d50a3a"/>
                <bindingRedirect oldVersion="7.0.3300.0" 
                newVersion="8.0.0.0"/>
            </dependentAssembly>
        </assemblyBinding>
    </runtime>
</configuration>

Objekt VSProject2

Tento objekt poskytuje přístup k jiné objekty v modelu rozšiřitelnosti.DTE objekt je objekt nejvyšší úrovně v Visual Studio automatizace modelu.V modelu Obecné možnosti rozšíření projekt je reprezentován obecného Project objekt. Project objekt má Object vlastnost. Tuto vlastnost typu v době spuštění určena jazyk projekt.V Visual Basic nebo Visual C# projekt Object vlastnost vrací objekt typu VSProject2. Od typu Object vlastnost je objekt, musí použít odkazovat se na zadejte VSProject2. Za odkazovat se VSProject2 položkapracovat s vlastností, konfigurace, soubory, složky, dovozy výkazů a odkazy projekt.

Další informace naleznete v tématu Představení objektu VSProject2.

Referenční objekty a odkazy

References vlastnost, obsažené VSProject2 objektobsahuje kolekce Reference3 objektů. Reference3 objekt představujeodkazovat se projekta je především jen pro čteníobjekt , který podporuje Remove metoda. References objekt podporuje přidávání odkazů (model COM,.NET je nicméně, ActiveX, ostatní projekty) a zvyšování události (Přidání, odstranění a změna odkazy).

ReferencesOdkazů na web projektneobsahuje objekt . projekt web odkazy mohou získat přístup k ProjectItems vlastnost WebReferencesFolder vlastnost.

Další informace a příklady kódu naleznete v Reference a Reference3 objekt References kolekce References vlastnosta WebReferencesFolder vlastnost.

Dovoz objektu

Imports vlastnost obsažené VSProject2 objekt udržuje kolekce Imports příkazy že párovat na celou Visual Basic projekt. Pokud je výpis o dovozu do této kolekce, odpovídající Imports výpis (například Imports VSLangProj) není nutné přidat do souboru kódu. Tento objekt podporuje přidávání a odebírání dovozy výkazů a zvýšení událostí odezva na přidávání a odebírání příkazy.Neexistuje žádný ekvivalent v Visual C# projekta VSProject2.Importsvrátí vlastnost Nothing nebo null při použití Visual C# projekt. Další informace naleznete v tématu Imports.

Správce BuildManager objekty a VSProjectItem

VSProjectItemJe objekt protihodnotupoložka projekt VSProject2 objekt. V modelu obecné rozšiřitelnosti obecného ProjectItem objekt představuje projektpoložka. ObjectJe vlastnost typu Object a v Visual Basic nebo Visual C#je tato vlastnost typ projekt, VSProjectItem. VSProjectItem objekt . BuildManager objekt zpracovává vlastní nástroj výstup. Další informace naleznete v RunCustomTool metoda Představení objektu BuildManager, VSProjectItem objekta BuildManager objekt.

Vlastnost Properties

Obecné rozšiřitelnosti model má Properties vlastnost tři objekty:

  • Project objekt   Vlastnosti v tomto objekt jsou rovnocenné vlastnosti týkající Společné vlastnosti kartu vlastností projekt dialog v IDE.

  • Configuration objekt   Vlastnosti v tomto objekt jsou rovnocenné vlastnosti týkající Vlastnosti konfigurace kartu vlastností projekt dialog v IDE.

  • ProjectItem objekt   Vlastnosti v tomto objekt jsou rovnocenné vlastnosti týkající Vlastnostiokno při výběru projektpoložka v Aplikaci Solution Explorer.

  • V každém případě Properties vlastnost je kolekce objektů typu vlastnosti. A Property objekt lze získat z kolekce zadáním vlastnostindex založený na 1 nebo jeho název. Obsah kolekce závisí na jazyku.Z položky projekt také obsah závisí na tom, že položka je soubor nebo složku.

Viz také

Koncepty

Spektrum automatizace sady Visual Studio

Další zdroje

Vytváření doplňků a průvodců