Share via


VSProject2 – rozhraní

Obsahuje informace týkající Visual Basic nebo Visual C# projektu.Object Objekt vrátí ji, když je projekt Visual Basic nebo Visual C# projektu.

Obor názvů:  VSLangProj80
Sestavení:  VSLangProj80 (v VSLangProj80.dll)

Syntaxe

'Deklarace
<GuidAttribute("B1042570-25C6-424A-B58B-56FA83AA828A")> _
Public Interface VSProject2 _
    Inherits VSProject
[GuidAttribute("B1042570-25C6-424A-B58B-56FA83AA828A")]
public interface VSProject2 : VSProject
[GuidAttribute(L"B1042570-25C6-424A-B58B-56FA83AA828A")]
public interface class VSProject2 : VSProject
[<GuidAttribute("B1042570-25C6-424A-B58B-56FA83AA828A")>]
type VSProject2 =  
    interface 
        interface VSProject 
    end
public interface VSProject2 extends VSProject

Typ VSProject2 zveřejňuje následující členy.

Vlastnosti

  Název Popis
Veřejná vlastnost BuildManager Získá BuildManager objekt VSProject.
Veřejná vlastnost DTE Získá objekt nejvyšší úrovně rozšiřitelnosti.
Veřejná vlastnost Events Získá VSProjectEvents objekt, který umožňuje reagovat na události Imports, References, a BuildManager objekty.
Veřejná vlastnost Events2 Získá VSProjectEvents2 objekt, který umožňuje reagovat na události Imports, References, BuildManager, a VSLangProjWebReferencesEvents objekty.
Veřejná vlastnost Imports Získá Imports objekt přidružený k projektu.Pro projekty jazyka C# Imports je nastavena na Nothing ( nullodkaz null (Nothing v jazyce Visual Basic) odkaz).
Veřejná vlastnost Project Získá obecného Project objekt přidružený Visual Basic nebo Visual C# projektu.
Veřejná vlastnost PublishManager Získá PublishManager objekt, který chcete povolit jednou publikování.
Veřejná vlastnost References Získá References kolekce projektu.
Veřejná vlastnost TemplatePath Tato vlastnost se již nepoužívá v Microsoft Visual Studio 2005.Jako náhradu použijte GetProjectItemTemplate.
Veřejná vlastnost WebReferencesFolder Získá ProjectItem objekt představující složky webové odkazy projektu.Pokud složka neexistuje, vrátí tato vlastnost Nothing ( nullodkaz null (Nothing v jazyce Visual Basic) odkaz).
Veřejná vlastnost WorkOffline Označuje, zda je webový projekt práce online nebo offline.Při práci v režimu offline, vývoj pokračuje na úložiště offline souborů projektu tak, aby soubory projektu na serveru se nezmění.

Nahoru

Metody

  Název Popis
Veřejná metoda AddWebReference Do projektu přidán odkaz na webovou službu.Novou podsložku referenční webové služby je přidána do složky webové odkazy projektu.Tato nová složka obsahuje několik položek projektu vztahující se k webové službě.Metoda vrátí ProjectItem objektu přidružené k nové složce webové služby.
Veřejná metoda CopyProject Zkopíruje do nového umístění některých nebo všech webového projektu.
Veřejná metoda CreateWebReferencesFolder Vytvoří složku webové odkazy k projektu.
Veřejná metoda Exec Infrastruktura. Microsoft pouze pro vnitřní potřebu.
Veřejná metoda GenerateKeyPairFiles Generuje soubor veřejného a soukromého klíče použít k vytvoření silného názvu pro sestavení.
Veřejná metoda GetUniqueFilename Generuje jedinečný název souboru v rámci projektu. používá se k pojmenování nové položky projektu.
Veřejná metoda Refresh Aktualizuje zobrazení projektu v Průzkumník řešení a aktualizuje odkazy.

Nahoru

Poznámky

Projectje základní objekt rozšíření, obsahující informace o projektech libovolného jazyka.Object Vlastnost Project objekt vrátí objekt, jehož typ závisí na projektu jazyka.U Visual Basic a Visual C#, tento objekt je VSProject2 objektu.

Object Vlastnost vrátí Object datového typu.Datový objekt vrácený Object vlastnost může pak být explicitně převést na VSProject2.Následující příklad ukazuje, jak pomocí tohoto převodu CType funkce.PrjKind Se používá k testování pro typ projektu před převodem.

Příklady

Chcete-li spustit tento příklad jako doplněk, viz Postupy: Kompilace a spuštění příkladů kódu objektu automatizace.

Chcete-li zjistit, zda Visual Basic nebo Visual C# projekt inteligentní zařízení, použijte prjKindSDEVBProject a prjKindSDECSharpProject.

[Visual Basic]

Imports VSLangProj
Imports VSLangProj2
Imports VSLangProj80
Public Sub OnConnection(ByVal application As Object,_
 ByVal connectMode As ext_ConnectMode, ByVal addInInst _
 As Object, ByRef custom As Array) Implements _
 IDTExtensibility2.OnConnection
    applicationObject = CType(application, DTE2)
    addInInstance = CType(addInInst, AddIn)
    VSProject2Example(applicationObject)
End Sub

 Sub VSProject2Example(ByVal dte As DTE2)
    Dim aProject As Project
    Dim aVSProject2 As VSProject2

    aProject = applicationObject.Solution.Projects.Item(1)
    MsgBox(aProject.Kind & aProject.Name)
    If (aProject.Kind = PrjKind.prjKindVBProject) Or_
    (aProject.Kind = PrjKind.prjKindCSharpProject) Then
        aVSProject2 = CType(applicationObject.Solution.Projects.Item(1).Object, _
        VSProject2)
        MsgBox(aVSProject2.Project.FullName)
    Else
        MsgBox("The first project is not a Visual Basic or C# _
        project.")
    End If
End Sub

[C#]

// To use Messabox.Show, a reference to Windows.Forms is required.
using System.Windows.Forms;
using VSLangProj;
using VSLangProj2;
using VSLangProj80;
public void OnConnection(object application, ext_ConnectMode
 connectMode, object addInInst, ref Array custom)
{
    applicationObject = (DTE2)application;
    addInInstance = (AddIn)addInInst;
    VSProject2Example((DTE2)applicationObject);
}

public void VSProject2Example(DTE2 dte)
{
    Project aProject = null; 
    VSProject aVSProject2 = null; 
    aProject = applicationObject.Solution.Projects.Item( 1 ); 
    MessageBox.Show( aProject.Kind + aProject.Name); 
    if ( ( aProject.Kind == PrjKind.prjKindVBProject ) |
 ( aProject.Kind == PrjKind.prjKindCSharpProject ) ) 
    { 
        aVSProject2 = ( ( VSProject )
(applicationObject.Solution.Projects.Item( 1 ).Object ) ); 
        MessageBox.Show( aVSProject2.Project.FullName); 
    } 
    else 
    { 
        MessageBox.Show( "The first project is not a Visual Basic or C# project."); 
    } 
}

Viz také

Referenční dokumentace

VSLangProj80 – obor názvů

VSProject