Interface VCCodeModel
Um objeto que fornece acesso de nível de projeto para qualquer elemento de código contido.
Namespace: Microsoft.VisualStudio.VCCodeModel
Assembly: Microsoft.VisualStudio.VCCodeModel (em Microsoft.VisualStudio.VCCodeModel.dll)
Sintaxe
'Declaração
<GuidAttribute("E6691CDE-9A41-4891-8D8C-C1E93958E6A0")> _
Public Interface VCCodeModel _
Inherits CodeModel2
[GuidAttribute("E6691CDE-9A41-4891-8D8C-C1E93958E6A0")]
public interface VCCodeModel : CodeModel2
[GuidAttribute(L"E6691CDE-9A41-4891-8D8C-C1E93958E6A0")]
public interface class VCCodeModel : CodeModel2
[<GuidAttribute("E6691CDE-9A41-4891-8D8C-C1E93958E6A0")>]
type VCCodeModel =
interface
interface CodeModel2
end
public interface VCCodeModel extends CodeModel2
O tipo VCCodeModel expõe os membros a seguir.
Propriedades
Nome | Descrição | |
---|---|---|
Attributes | Obtém uma coleção de todos os atributos para o objeto. | |
Classes | Obtém uma coleção de classes para o objeto. | |
CodeElements | Obtém uma coleção de elementos de código. | |
Delegates | Obtém uma coleção de representantes para o objeto. | |
DialogClasses | Obtém uma coleção de classes de caixa de diálogo. | |
DTE | Obtém o objeto de extensibilidade de nível superior. | |
Enums | Obtém uma coleção de enumerações para o objeto. | |
Functions | Obtém uma coleção das funções para o objeto. | |
IDLImports | Obtém a coleção de Import do arquivo de .idl do objeto pai. | |
IDLLibraries | Obtém a coleção de elementos de Library no objeto. | |
Imports | Obtém a coleção de #import para o objeto pai. | |
Includes | Obtém a coleção de #include para o objeto. | |
Interfaces | Obtém a coleção das interfaces para o objeto. | |
IsCaseSensitive | Obtém um valor indicando se um elemento de código diferencia maiúsculas de minúsculas. | |
IsSynchronized | Determina se VCCodeModel é em sincronia com o código-fonte para a solução. | |
Language | Obtém a linguagem de programação usada para criar o código. | |
Macros | Obtém a coleção de macros (instruções de#define ) para o objeto. | |
Maps | Obtém a coleção de mapas para o objeto. | |
Namespaces | Obtém a coleção de namespaces para o objeto. | |
Parent | Obtém o objeto pai imediato de um determinado objeto. | |
Structs | Obtém a coleção de elementos de estrutura para o objeto. | |
Typedefs | Obtém a coleção de elementos de Typedef para o objeto. | |
Unions | Obtém a coleção de elementos de Union para o objeto. | |
UsingAliases | Obtém a coleção de elementos de alias para o objeto. | |
Usings | Obtém a coleção de elementos de #using para o objeto. | |
Variables | Obtém a coleção de variáveis para o objeto. |
Superior
Métodos
Nome | Descrição | |
---|---|---|
AbortTransaction | Cancela a transação atual. | |
AddAttribute | Cria uma nova compilação de código de atributo e inserir o código no local correto. | |
AddClass | Cria uma nova compilação do código de classe e inserir o código no local correto. | |
AddDelegate | Cria uma nova compilação de código de representante e inserir o código no local correto. | |
AddEnum | Cria uma nova compilação de código de enumeração e inserir o código no local correto. | |
AddFunction | Cria uma nova compilação de código de função e inserir o código no local correto. | |
AddIDLImport | Adicionar uma nova declaração de import a um arquivo específico de .idl. | |
AddIDLLibrary | Adicionar uma nova declaração de library a um arquivo específico de .idl. | |
AddImport | Adiciona um elemento de #import a um arquivo específico. | |
AddInclude | Adiciona um elemento de #include a um arquivo específico. | |
AddInterface | Cria uma nova compilação do código de interface e inserir o código no local correto. | |
AddMacro | Adiciona um elemento de #define a um arquivo específico. | |
AddMap | Adiciona uma entrada de mapa do objeto. | |
AddNamespace | Cria uma nova compilação de código de namespace e inserir o código no local correto. | |
AddStruct | Cria uma nova compilação do código de estrutura e inserir o código no local correto. | |
AddTypedef | Adiciona um elemento de typedef a um arquivo específico. | |
AddUnion | Adiciona um elemento de union ao objeto de VCCodeModel . | |
AddUsing | Adiciona um elemento de #using a um arquivo específico. | |
AddUsingAlias | Adiciona um alias de uso. | |
AddVariable | Cria uma nova compilação variável de código e inserir o código no local correto. | |
CodeElementFromFullName | Obtém uma coleção de elementos de código especificados para o objeto. | |
CodeElementFromFullName2 | Obtém uma coleção de elementos de código especificados para o objeto.É idêntico a CodeElementFromFullName, exceto que ignora namespaces durante a pesquisa. | |
CodeTypeFromFullName | Retorna um elemento de código com base em um nome totalmente qualificado. | |
CodeTypeFromFullName2 | Retorna um elemento de código com base em um nome totalmente qualificado.É idêntico a CodeTypeFromFullName exceto que tentará a resolução de typedef . | |
CommitTransaction | Confirma a transação atual para o objeto. | |
CreateCodeTypeRef | Um objeto de CodeTypeRef baseado no indicador de tipo de dados passados. | |
DotNetNameFromLanguageSpecific | Converte o namespace para um formulário .NET. | |
ElementFromID | Não implementado. | |
GetClassesDerivedFrom | Retorna as classes derivadas da classe especificada. | |
IsValidID | Retorna se um nome especificado é um identificador válido programática para o idioma atual. | |
LanguageSpecificNameFromDotNet | Converte o nome totalmente qualificado para um formulário não gerenciado de namespace. | |
Remove | Remove o projeto especificado da solução. | |
RemoveEx | Remove o projeto especificado da solução. | |
StartTransaction | Inicia uma transação. | |
Synchronize | Sincroniza todos os objetos de modelo de código na solução com as edições feitas aos arquivos de origem. | |
SynchronizeCancellable | Exibe uma caixa de diálogo que tenha uma barra de progresso.O usuário pode cancelar a espera e desbloquear o segmento. | |
SynchronizeFiles | Garante que a propriedade de FileCodeModel em um arquivo de projeto não seja nulo. | |
ValidateMember | Valida que o nome proposto é um nome válido de C++ para o tipo determinado no contexto de objeto pai. | |
ValidateMemberName | Valida o nome de um elemento. |
Superior
Comentários
O objeto de VCCodeModel fornece o código funcionalidade modelo para vários idiomas suportadas pelo Visual Studio (incluindo Visual C++) no nível do projeto.
Primeiro, este objeto é usado para localizar qualquer elemento de código acessível dentro de um projeto (dado um nome totalmente qualificado). Além disso, o objeto especifica a linguagem de programação que o projeto é gravado.
Dica
Uma grande parte da funcionalidade deste objeto é fornecida pelo objeto Visual Studio CodeModel2 .
Ao usar um objeto de VCCodeModel em um projeto gerenciado, inclua Microsoft.VisualStudio.VCCodeModel.dll como uma 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 um código de exemplo para extensibilidade do modelo de código do Visual C++ para obter informações sobre como compilar e executar essa amostra.
Exemplos
Essa função retorna o objeto de VCCodeModel 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