VCCodeModel - интерфейс
Объект, предоставляющий доступ на уровне проекта к любому содержащемуся элементу кода.
Пространство имен: Microsoft.VisualStudio.VCCodeModel
Сборка: Microsoft.VisualStudio.VCCodeModel (в Microsoft.VisualStudio.VCCodeModel.dll)
Синтаксис
'Декларация
<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
Тип VCCodeModel предоставляет следующие члены.
Свойства
Имя | Описание | |
---|---|---|
![]() |
Attributes | Получает коллекцию всех атрибутов объекта. |
![]() |
Classes | Получает коллекцию классов для объекта. |
![]() |
CodeElements | Получает коллекцию элементов кода. |
![]() |
Delegates | Получает коллекцию делегатов для объекта. |
![]() |
DialogClasses | Получает коллекцию классов диалоговых окон. |
![]() |
DTE | Возвращает объект расширения верхнего уровня. |
![]() |
Enums | Получает коллекцию перечислений для объекта. |
![]() |
Functions | Получает коллекцию функций для объекта. |
![]() |
IDLImports | Получает коллекцию операторов Import из IDL-файла родительского объекта. |
![]() |
IDLLibraries | Получает коллекцию элементов Library для объекта. |
![]() |
Imports | Получает коллекцию операторов #import родительского объекта. |
![]() |
Includes | Получает коллекцию операторов #include для объекта. |
![]() |
Interfaces | Получает коллекцию интерфейсов для объекта. |
![]() |
IsCaseSensitive | Получает значение, указывающее, учитывается ли регистр в элементе кода. |
![]() |
IsSynchronized | Проверяет соответствие модели кода VCCodeModel исходному коду для решения. |
![]() |
Language | Возвращает язык программирования, использовавшийся при создании кода. |
![]() |
Macros | Получает коллекцию макросов (операторов #define) для объекта. |
![]() |
Maps | Получает коллекцию сопоставлений для объекта. |
![]() |
Namespaces | Получает коллекцию пространств имен для объекта. |
![]() |
Parent | Получает непосредственный родительский объект заданного объекта. |
![]() |
Structs | Получает коллекцию элементов структуры для объекта. |
![]() |
Typedefs | Получает коллекцию элементов Typedef для объекта. |
![]() |
Unions | Получает коллекцию элементов Union для объекта. |
![]() |
Usings | Получает коллекцию элементов #using для объекта. |
![]() |
Variables | Получает коллекцию переменных для объекта. |
В начало страницы
Методы
Имя | Описание | |
---|---|---|
![]() |
AbortTransaction | Отменяет текущую транзакцию. |
![]() |
AddAttribute | Создает новую конструкцию кода атрибута и вставляет код в нужное место. |
![]() |
AddClass | Создает новую конструкцию кода класса и вставляет код в нужное место. |
![]() |
AddDelegate | Создает новую конструкцию кода делегата и вставляет код в нужное место. |
![]() |
AddEnum | Создает новую конструкцию кода перечислителя и вставляет код в нужное место. |
![]() |
AddFunction | Создает новую конструкцию кода функции и вставляет код в нужное место. |
![]() |
AddIDLImport | Добавляет новый оператор import в определенный IDL-файл. |
![]() |
AddIDLLibrary | Добавляет новый оператор library в определенный IDL-файл. |
![]() |
AddImport | Добавляет элемент #import в определенный файл. |
![]() |
AddInclude | Добавляет элемент #include в определенный файл. |
![]() |
AddInterface | Создает новую конструкцию кода интерфейса и вставляет код в нужное место. |
![]() |
AddMacro | Добавляет элемент #define в определенный файл. |
![]() |
AddMap | Добавляет запись сопоставления в объект. |
![]() |
AddNamespace | Создает новую конструкцию кода пространства имен и вставляет код в нужное место. |
![]() |
AddStruct | Создает новую конструкцию кода структуры и вставляет код в нужное место. |
![]() |
AddTypedef | Добавляет элемент typedef в определенный файл. |
![]() |
AddUnion | Добавляет элемент union в объект VCCodeModel. |
![]() |
AddUsing | Добавляет элемент #using в определенный файл. |
![]() |
AddVariable | Создает новую конструкцию кода переменной и вставляет код в нужное место. |
![]() |
CodeElementFromFullName | Получает коллекцию указанных элементов кода для объекта. |
![]() |
CodeElementFromFullName2 | Получает коллекцию указанных элементов кода для объекта.Идентично привязке CodeElementFromFullName с единственным отличием: при поиске игнорируются пространства имен. |
![]() |
CodeTypeFromFullName | Возвращает элемент кода на основе полного имени. |
![]() |
CodeTypeFromFullName2 | Возвращает элемент кода на основе полного имени.Идентично методу CodeTypeFromFullName с единственным отличием: пытается использовать разрешение typedef. |
![]() |
CommitTransaction | Фиксирует текущую транзакцию для объекта. |
![]() |
CreateCodeTypeRef | Объект CodeTypeRef, основанный на переданном индикаторе типа данных. |
![]() |
DotNetNameFromLanguageSpecific | Преобразует пространство имен в форму .NET. |
![]() |
ElementFromID | Не реализован. |
![]() |
GetClassesDerivedFrom | |
![]() |
IsValidID | Возвращает информацию о том, является ли указанное имя действительным программным идентификатором текущего языка. |
![]() |
LanguageSpecificNameFromDotNet | Выполняет преобразование из полного имени в форму неуправляемого пространства имен. |
![]() |
Remove | Удаляет указанный проект из решения. |
![]() |
RemoveEx | Удаляет указанный проект из решения. |
![]() |
StartTransaction | Начинает транзакцию. |
![]() |
Synchronize | Синхронизирует все объекты модели кода с изменениями, внесенными в исходные файлы. |
![]() |
SynchronizeCancellable | Отображает диалоговое окно с индикатором выполнения.Пользователь может отменить ожидание и разблокировать поток. |
![]() |
SynchronizeFiles | Удостоверяется в том, что значение свойства FileCodeModel файла проекта отлично от null. |
![]() |
ValidateMember | Проверяет, является ли предложенное имя допустимым именем C++ в контексте заданного родительского объекта. |
![]() |
ValidateMemberName |
В начало страницы
Заметки
VCCodeModel объект предоставляет функциональные возможности для кода модели разные языки, поддерживаемые Visual Studio (Visual C++) на уровне проекта.
В основном, этот объект используется для поиска любой элемент кода представляет собой доступную в рамках проекта (заданное полное имя).Кроме того, объект задает язык программирования, на котором написан проект.
![]() |
---|
Большая часть функциональных возможностей объекта обеспечивается Visual Studio CodeModel2 объект. |
При использовании a VCCodeModel объект в рамках управляемого проекта, включает Microsoft.VisualStudio.VCCodeModel.dll как ссылка.Дополнительные сведения о добавлении ссылок на управляемый проекту см. в разделе Практическое руководство. Добавление и удаление ссылок с помощью диалогового окна "Добавление ссылок".
Дополнительные сведения по компиляции и запуску этого примера см. в разделе Практическое руководство. Компиляция примера кода для расширения модели кода Visual C++.
Примеры
Эта функция возвращает VCCodeModel объект, представляющий первый проект в решении.
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