Interface VCCodeModel

Um objeto fornecendo acesso de nível de projeto a qualquer elemento de código contido.

Namespace:  Microsoft.VisualStudio.VCCodeModel
Assembly:  Microsoft.VisualStudio.VCCodeModel (em Microsoft.VisualStudio.VCCodeModel.dll)

Sintaxe

'Declaração
<GuidAttribute("5A716328-5325-4A51-AEF4-EFBB8A10B89F")> _
Public Interface VCCodeModel _
    Inherits CodeModel2
[GuidAttribute("5A716328-5325-4A51-AEF4-EFBB8A10B89F")]
public interface VCCodeModel : CodeModel2
[GuidAttribute(L"5A716328-5325-4A51-AEF4-EFBB8A10B89F")]
public interface class VCCodeModel : CodeModel2
[<GuidAttribute("5A716328-5325-4A51-AEF4-EFBB8A10B89F")>]
type VCCodeModel =  
    interface
        interface CodeModel2
    end
public interface VCCodeModel extends CodeModel2

O tipo VCCodeModel expõe os membros a seguir.

Propriedades

  Nome Descrição
Propriedade pública Attributes Obtém uma coleção de todos os atributos do objeto.
Propriedade pública Classes Obtém uma coleção de classes para o objeto.
Propriedade pública CodeElements Obtém uma coleção de elementos de código.
Propriedade pública Delegates Obtém uma coleção de delegados para o objeto.
Propriedade pública DialogClasses Obtém uma coleção de classes de diálogo.
Propriedade pública DTE Obtém o objeto de extensibilidade de nível superior.
Propriedade pública Enums Obtém uma coleção de enumerações para o objeto.
Propriedade pública Functions Obtém uma coleção de funções para o objeto.
Propriedade pública IDLImports Obtém a coleção de Import instruções do arquivo. idl do objeto pai.
Propriedade pública IDLLibraries Obtém a coleção de Library elementos no objeto.
Propriedade pública Imports Obtém a coleção de #import instruções para o objeto pai.
Propriedade pública Includes Obtém a coleção de #include instruções para o objeto.
Propriedade pública Interfaces Obtém a coleção de interfaces para o objeto.
Propriedade pública IsCaseSensitive Obtém um valor que indica se um elemento de código é diferencia maiúsculas de minúsculas.
Propriedade pública IsSynchronized Determina se VCCodeModel está em sincronia com o código-fonte para a solução.
Propriedade pública Language Obtém a linguagem de programação usada para criar o código.
Propriedade pública Macros Obtém a coleção de macros (#define instruções) para o objeto.
Propriedade pública Maps Obtém a coleção de mapas para o objeto.
Propriedade pública Namespaces Obtém a coleção de espaços para nome do objeto.
Propriedade pública Parent Obtém o objeto pai imediato de um determinado objeto.
Propriedade pública Structs Obtém a coleção de elementos de estrutura para o objeto.
Propriedade pública Typedefs Obtém a coleção de Typedef elementos para o objeto.
Propriedade pública Unions Obtém a coleção de Union elementos para o objeto.
Propriedade pública Usings Obtém a coleção de #using elementos para o objeto.
Propriedade pública Variables Obtém a coleção de variáveis para o objeto.

Superior

Métodos

  Nome Descrição
Método público AbortTransaction Cancela a transação atual.
Método público AddAttribute Cria uma nova construção de código de atributo e insere o código no local correto.
Método público AddClass Cria uma nova construção de código de classe e insere o código no local correto.
Método público AddDelegate Cria uma nova construção de código de delegação e insere o código no local correto.
Método público AddEnum Cria uma nova construção de código de enumeração e insere o código no local correto.
Método público AddFunction Cria uma nova construção de código de função e insere o código no local correto.
Método público AddIDLImport Adiciona um novo import a instrução em um arquivo. idl específico.
Método público AddIDLLibrary Adiciona um novo library a instrução em um arquivo. idl específico.
Método público AddImport Adiciona um #import elemento para um arquivo específico.
Método público AddInclude Adiciona um #include elemento para um arquivo específico.
Método público AddInterface Cria uma nova construção de código de interface e insere o código no local correto.
Método público AddMacro Adiciona um #define elemento para um arquivo específico.
Método público AddMap Adiciona uma entrada de mapa para o objeto.
Método público AddNamespace Cria uma nova construção de código de namespace e insere o código no local correto.
Método público AddStruct Cria uma nova construção de código de estrutura e insere o código no local correto.
Método público AddTypedef Adiciona um typedef elemento para um arquivo específico.
Método público AddUnion Adiciona um union elemento para o VCCodeModel objeto.
Método público AddUsing Adiciona um #using elemento para um arquivo específico.
Método público AddVariable Cria uma nova construção de código de variável e insere o código no local correto.
Método público CodeElementFromFullName Obtém uma coleção de elementos de código especificada para o objeto.
Método público CodeElementFromFullName2 Obtém uma coleção de elementos de código especificada para o objeto.Ele é idêntico ao CodeElementFromFullName, exceto que ele ignora os espaços para nome durante a pesquisa.
Método público CodeTypeFromFullName Retorna um elemento de código com base em um nome totalmente qualificado.
Método público CodeTypeFromFullName2 Retorna um elemento de código com base em um nome totalmente qualificado.Ele é idêntico ao CodeTypeFromFullName , exceto que ele irá tentar typedef resolução.
Método público CommitTransaction Confirma a transação atual para o objeto.
Método público CreateCodeTypeRef A CodeTypeRef objeto baseado no indicador de tipo de dados transmitido.
Método público DotNetNameFromLanguageSpecific Converte o namespace para um.NET na forma.
Método público ElementFromID Não implementado.
Método público GetClassesDerivedFrom
Método público IsValidID Retorna se um nome especificado é um identificador programático válido para o idioma atual.
Método público LanguageSpecificNameFromDotNet Traduz-se do nome totalmente qualificado para um formulário de namespace não gerenciado.
Método público Remove Remove o projeto especificado da solução.
Método público RemoveEx Remove o projeto especificado da solução.
Método público StartTransaction Inicia uma transação.
Método público Synchronize Sincroniza todos os objetos de modelo de código na solução com edições feitas nos arquivos de origem.
Método público SynchronizeCancellable Exibe uma caixa de diálogo que tem uma barra de progresso.O usuário pode cancelar espera e desbloquear o thread.
Método público SynchronizeFiles Garante que o FileCodeModel propriedade em um arquivo de projeto não é nula.
Método público ValidateMember Valida que o nome proposto é um nome válido do C++ para o tipo de dado no contexto do objeto pai.
Método público ValidateMemberName

Superior

Comentários

O VCCodeModel objeto fornece a funcionalidade do modelo de código para vários idiomas suportados pelo Visual Studio (incluindo o Visual C++) no nível do projeto.

Basicamente, esse objeto é usado para localizar qualquer elemento de código acessível dentro de um projeto (concedido-se um nome totalmente qualificado).Além disso, o objeto Especifica a linguagem de programação na qual o projeto foi gravado.

ObservaçãoObservação

Uma grande parte da funcionalidade desse objeto é fornecida pelo Visual Studio CodeModel2 objeto.

Ao usar um VCCodeModel de objeto dentro de um projeto gerenciado, incluir Microsoft.VisualStudio.VCCodeModel.dll como referência.Para obter mais informações sobre como adicionar referências a um projeto gerenciado, consulte Como: Adicionar ou remover referências usando a caixa de diálogo Adicionar referência.

Consulte Como: compilar o código de exemplo para extensibilidade do Visual C++ código modelo para obter informações sobre como compilar e executar esse exemplo.

Exemplos

Esta função retorna o VCCodeModel objeto que representa o primeiro projeto em uma solução.

Function GetVCCodeModel() As VCCodeModel
    GetVCCodeModel = Nothing
    Dim codeModel As CodeModel
    Dim vcCodeModel As VCCodeModel
    Dim solution As Solution
    solution = DTE.Solution
    If (solution Is Nothing) Then
        MsgBox("A Solution is not open")
        Exit Function
    Else
        If (DTE.Solution.Count <> 0) Then
            codeModel = DTE.Solution.Item(1).CodeModel
            vcCodeModel = CType(codeModel, VCCodeModel)
            If (vcCodeModel Is Nothing) Then
                MsgBox("The first project is not a VC++ project.")
                Exit Function
            Else
                GetVCCodeModel = vcCodeModel
            End If
        End If
    End If
End Function

Consulte também

Referência

Namespace Microsoft.VisualStudio.VCCodeModel