Interface VSProject2

Contém as informações específicas de um Visual Basic ou Visual C# projeto. O Object objeto retorna quando o projeto é um Visual Basic ou Visual C# projeto.

Namespace:  VSLangProj80
Assembly:  VSLangProj80 (em VSLangProj80.dll)

Sintaxe

'Declaração
<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

O tipo VSProject2 expõe os membros a seguir.

Propriedades

  Nome Descrição
Propriedade pública BuildManager (Herdado de VSProject.)
Propriedade pública BuildManager Obtém o BuildManagero objeto da VSProject.
Propriedade pública DTE (Herdado de VSProject.)
Propriedade pública DTE Obtém oobjetode extensibilidadede nível superior.
Propriedade pública Events (Herdado de VSProject.)
Propriedade pública Events Obtém um VSProjectEventso objeto que permite que você responda a eventos da Imports, References, e BuildManager objetos.
Propriedade pública Events2 Obtém um VSProjectEvents2o objeto que permite que você responda a eventos da Imports, References, BuildManager, e VSLangProjWebReferencesEvents objetos.
Propriedade pública Imports (Herdado de VSProject.)
Propriedade pública Imports Obtém o Importso objeto associado ao projeto. Para projetos de C#, o Imports propriedade estiver definida como Nothing (um nulluma referência nula (Nothing no Visual Basic) referência).
Propriedade pública Project (Herdado de VSProject.)
Propriedade pública Project Obtém a genérica Projecto objeto associado com o Visual Basic ou Visual C# projeto.
Propriedade pública PublishManager Obtém um PublishManagero objeto para permitir, clique uma vez de publicação.
Propriedade pública References (Herdado de VSProject.)
Propriedade pública References Obtém o Referencesa coleção para o projeto.
Propriedade pública TemplatePath (Herdado de VSProject.)
Propriedade pública TemplatePath Esta propriedade é preterido no Microsoft Visual Studio 2005.Use GetProjectItemTemplate em vez disso.
Propriedade pública WebReferencesFolder (Herdado de VSProject.)
Propriedade pública WebReferencesFolder Obtém o ProjectItemo objeto que representa a pasta de referências da Web do projeto. Se a pasta não existe, essa propriedade retorna Nothing (um nulluma referência nula (Nothing no Visual Basic) referência).
Propriedade pública WorkOffline (Herdado de VSProject.)
Propriedade pública WorkOffline Indica se umprojeto de Webestá trabalhando online ou offline. Quando estiver trabalhando offline, o desenvolvimento continua em um armazenamento offline de arquivos de projeto , para que os arquivos de projeto no servidor não são alterados.

Superior

Métodos

  Nome Descrição
Método público AddWebReference(String) (Herdado de VSProject.)
Método público AddWebReference(String) Adiciona uma referência a um serviço Web ao projeto.Uma nova subpasta de referência de serviço da Web é adicionada à pasta de referências da Web do projeto.Essa nova pasta contém vários outros itens de projeto relacionados ao serviço da Web .O método retorna o ProjectItemo objeto associado com a nova pasta de serviço Web .
Método público CopyProject(String, String, prjCopyProjectOption, String, String) (Herdado de VSProject.)
Método público CopyProject(String, String, prjCopyProjectOption, String, String) Copia a alguns ou todos de umprojeto de Webpara um novo local.
Método público CreateWebReferencesFolder() (Herdado de VSProject.)
Método público CreateWebReferencesFolder() Cria a pasta de referências Web para o projeto.
Método público Exec(prjExecCommand, Int32, Object, Object%) (Herdado de VSProject.)
Método público Exec(prjExecCommand, Int32, Object, Object%) Infraestrutura. Somente para uso interno da Microsoft.
Método público GenerateKeyPairFiles(String, String) (Herdado de VSProject.)
Método público GenerateKeyPairFiles(String, String) Gera uma pública/particular arquivo de chave usado ao formulário um nome forte para o assembly.
Método público GetUniqueFilename(Object, String, String) (Herdado de VSProject.)
Método público GetUniqueFilename(Object, String, String) Gera um nome de arquivo exclusivo dentro do projeto.ele é usado para nomear novos itens de projeto .
Método público Refresh() (Herdado de VSProject.)
Método público Refresh() Atualiza a aparência do projeto no Solution Explorer e atualiza as referências.

Superior

Comentários

Projecté um núcleo extensibilidade objeto que pode conter informações sobre os projetos de qualquer idioma.O Objecta propriedade da Project objeto cujo tipo depende do idioma do projeto usado</C0> . No maiúsculas e minúsculas de Visual Basic e Visual C#, esse objeto é um VSProject2 objeto.

O Object propriedade retorna um Object tipo de dados. O objeto de dados retornado pela Object propriedade pode ser explicitamente convertido em VSProject2. O exemplo a seguir demonstra esta conversão usando o CType função. O PrjKind é usado para teste para o tipo do projetoantes da conversão.

Exemplos

Para executar este exemplo como um suplemento, consulte Como: compilar e executar os exemplos de código de modelo de objeto de automação.

Para determinar se um Visual Basic ou um Visual C# projeto</C0> , use o prjKindSDEVBProject e 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."); 
    } 
}

Consulte também

Referência

Namespace VSLangProj80

VSProject