Udostępnij za pośrednictwem


Interfejs VSProject2

Zawiera informacje specyficzne dla Visual Basic lub Visual C# projekt. Object obiekt zwraca ją, gdy projekt jest Visual Basic lub Visual C# projekt.

Przestrzeń nazw:  VSLangProj80
Zestaw:  VSLangProj80 (w VSLangProj80.dll)

Składnia

'Deklaracja
<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 uwidacznia następujące elementy członkowskie.

Właściwości

  Nazwa Opis
Właściwość publiczna BuildManager (Odziedziczone z VSProject).
Właściwość publiczna BuildManager Pobiera BuildManager obiekt z VSProject.
Właściwość publiczna DTE (Odziedziczone z VSProject).
Właściwość publiczna DTE Pobiera rozszerzalności najwyższego poziomu obiekt.
Właściwość publiczna Events (Odziedziczone z VSProject).
Właściwość publiczna Events Pobiera VSProjectEvents obiekt , który umożliwia reagowanie na zdarzenia z Imports, References, i BuildManager obiektów.
Właściwość publiczna Events2 Pobiera VSProjectEvents2 obiekt , który umożliwia reagowanie na zdarzenia z Imports, References, BuildManager, i VSLangProjWebReferencesEvents obiektów.
Właściwość publiczna Imports (Odziedziczone z VSProject).
Właściwość publiczna Imports Pobiera Imports obiekt skojarzonego z projekt. C# projektów Imports właściwość jest ustawiona na Nothing ( nullodwołanie o wartości null (Nothing w języku Visual Basic) odniesienia).
Właściwość publiczna Project (Odziedziczone z VSProject).
Właściwość publiczna Project Pobiera rodzajową Project obiekt skojarzonego z Visual Basic lub Visual C# projekt.
Właściwość publiczna PublishManager Pobiera PublishManager obiekt , aby umożliwić kliknij raz publikowania.
Właściwość publiczna References (Odziedziczone z VSProject).
Właściwość publiczna References Pobiera References kolekcji dla projekt.
Właściwość publiczna TemplatePath (Odziedziczone z VSProject).
Właściwość publiczna TemplatePath Ta właściwość jest przestarzały w Microsoft Visual Studio 2005.Użyj GetProjectItemTemplate zamiast.
Właściwość publiczna WebReferencesFolder (Odziedziczone z VSProject).
Właściwość publiczna WebReferencesFolder Pobiera ProjectItem obiekt reprezentujący folder sieć Web odwołania projekt. Jeśli folder nie istnieje, ta właściwość zwraca Nothing ( nullodwołanie o wartości null (Nothing w języku Visual Basic) odniesienia).
Właściwość publiczna WorkOffline (Odziedziczone z VSProject).
Właściwość publiczna WorkOffline Wskazuje, czyprojekt sieci sieć Webdziała online lub offline. Podczas pracy offline, rozwoju jest kontynuowany w trybu offline plików projekt , tak aby pliki projekt na serwerze nie są zmieniane.

Początek

Metody

  Nazwa Opis
Metoda publiczna AddWebReference(String) (Odziedziczone z VSProject).
Metoda publiczna AddWebReference(String) Dodaje odwołanie do usługi sieci sieć Web do projekt.Nowy podfolder odniesienia usługi sieć Web jest dodawany do folderu sieć Web odwołania projekt.Ten folder zawiera kilka innych elementów projekt związane z usługą sieć Web .metoda zwraca ProjectItem obiekt skojarzonego z nowego folderu usługi sieć Web .
Metoda publiczna CopyProject(String, String, prjCopyProjectOption, String, String) (Odziedziczone z VSProject).
Metoda publiczna CopyProject(String, String, prjCopyProjectOption, String, String) Kopie niektórych lub wszystkich sieć Web projekt do nowej lokalizacji.
Metoda publiczna CreateWebReferencesFolder() (Odziedziczone z VSProject).
Metoda publiczna CreateWebReferencesFolder() Tworzy folder odwołań sieć Web dla projekt.
Metoda publiczna Exec(prjExecCommand, Int32, Object, Object%) (Odziedziczone z VSProject).
Metoda publiczna Exec(prjExecCommand, Int32, Object, Object%) Infrastruktura. Microsoft tylko do użytku wewnętrznego.
Metoda publiczna GenerateKeyPairFiles(String, String) (Odziedziczone z VSProject).
Metoda publiczna GenerateKeyPairFiles(String, String) Generuje publicznego i prywatnego klucza plik używany do formularz nazwa silna zestaw.
Metoda publiczna GetUniqueFilename(Object, String, String) (Odziedziczone z VSProject).
Metoda publiczna GetUniqueFilename(Object, String, String) Generuje unikatową nazwa pliku w ramach projekt.jest on używany do nazywania nowych elementów projekt .
Metoda publiczna Refresh() (Odziedziczone z VSProject).
Metoda publiczna Refresh() Odświeża wygląd projekt w Solution Explorer i odświeża odniesienia.

Początek

Uwagi

Projectjest rozszerzalności core obiekt , który może zawierać informacje o projektach dowolnego języka.Object właściwość Project obiekt zwraca obiekt którego typ zależy od projekt język używany. W odniesieniu do Visual Basic i Visual C#, że obiekt jest VSProject2 obiekt.

ObjectZwraca wartość właściwość Object typ danych. Dane obiekt zwróconego przez Object właściwość następnie mogą być jawnie konwertowane na VSProject2. Poniższy przykład demonstruje, za pomocą tej konwersji CType funkcja. PrjKind Jest używany do testowania typu projektprzed konwersją.

Przykłady

Aby uruchomić ten przykład, jako dodatek, zobacz Jak: skompilować i uruchomić przykłady kodu modelu obiektu automatyzacji.

Aby ustalić, czy Visual Basic lub Visual C# projekt jest urządzeń inteligentnych projekt, należy użyć prjKindSDEVBProject i 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."); 
    } 
}

Zobacz też

Informacje

Przestrzeń nazw VSLangProj80

VSProject