다음을 통해 공유


VCCodeModel 인터페이스

포함된 코드 요소에 대해 프로젝트 수준의 액세스를 제공하는 개체입니다.

네임스페이스:  Microsoft.VisualStudio.VCCodeModel
어셈블리:  Microsoft.VisualStudio.VCCodeModel(Microsoft.VisualStudio.VCCodeModel.dll)

구문

‘선언
<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

VCCodeModel 형식에서는 다음과 같은 멤버를 노출합니다.

속성

  이름 설명
Public 속성 Attributes 개체에 대한 모든 특성의 컬렉션을 가져옵니다.
Public 속성 Classes 개체에 대한 클래스의 컬렉션을 가져옵니다.
Public 속성 CodeElements 코드 요소 컬렉션을 가져옵니다.
Public 속성 Delegates 개체에 대한 대리자의 컬렉션을 가져옵니다.
Public 속성 DialogClasses 대화 상자 클래스의 컬렉션을 가져옵니다.
Public 속성 DTE 최상위 확장성 개체를 가져옵니다.
Public 속성 Enums 개체에 대한 열거형의 컬렉션을 가져옵니다.
Public 속성 Functions 개체에 대한 함수의 컬렉션을 가져옵니다.
Public 속성 IDLImports 부모 개체의 .idl 파일에서 Import 문의 컬렉션을 가져옵니다.
Public 속성 IDLLibraries 개체에 대한 Library 요소의 컬렉션을 가져옵니다.
Public 속성 Imports 부모 개체에 대한 #import 문의 컬렉션을 가져옵니다.
Public 속성 Includes 개체에 대한 #include 문의 컬렉션을 가져옵니다.
Public 속성 Interfaces 개체에 대한 인터페이스의 컬렉션을 가져옵니다.
Public 속성 IsCaseSensitive 코드 요소가 대/소문자를 구분하는지 여부를 나타내는 값을 가져옵니다.
Public 속성 IsSynchronized VCCodeModel이 솔루션의 소스 코드와 동기화되었는지 여부를 확인합니다.
Public 속성 Language 코드를 작성하는 데 사용되는 프로그래밍 언어를 가져옵니다.
Public 속성 Macros 개체에 대한 매크로(#define 문)의 컬렉션을 가져옵니다.
Public 속성 Maps 개체에 대한 맵의 컬렉션을 가져옵니다.
Public 속성 Namespaces 개체에 대한 네임스페이스의 컬렉션을 가져옵니다.
Public 속성 Parent 지정된 개체의 직계 개체를 가져옵니다.
Public 속성 Structs 개체에 대한 구조체 요소의 컬렉션을 가져옵니다.
Public 속성 Typedefs 개체에 대한 Typedef 요소의 컬렉션을 가져옵니다.
Public 속성 Unions 개체에 대한 Union 요소의 컬렉션을 가져옵니다.
Public 속성 UsingAliases 개체에 대한 alias 요소의 컬렉션을 가져옵니다.
Public 속성 Usings 개체에 대한 #using 요소의 컬렉션을 가져옵니다.
Public 속성 Variables 개체에 대한 변수의 컬렉션을 가져옵니다.

위쪽

메서드

  이름 설명
Public 메서드 AbortTransaction 현재 트랜잭션을 취소합니다.
Public 메서드 AddAttribute 새 특성 코드 구문을 만든 다음 올바른 위치에 코드를 삽입합니다.
Public 메서드 AddClass 새 클래스 코드 구문을 만든 다음 올바른 위치에 코드를 삽입합니다.
Public 메서드 AddDelegate 새 대리자 코드 구문을 만든 다음 올바른 위치에 코드를 삽입합니다.
Public 메서드 AddEnum 새 열거형 코드 구문을 만든 다음 올바른 위치에 코드를 삽입합니다.
Public 메서드 AddFunction 새 함수 코드 구문을 만든 다음 올바른 위치에 코드를 삽입합니다.
Public 메서드 AddIDLImport 특정 .idl 파일에 새 import 문을 추가합니다.
Public 메서드 AddIDLLibrary 특정 .idl 파일에 새 library 문을 추가합니다.
Public 메서드 AddImport 특정 파일에 #import 요소를 추가합니다.
Public 메서드 AddInclude 특정 파일에 #include 요소를 추가합니다.
Public 메서드 AddInterface 새 인터페이스 코드 구문을 만든 다음 올바른 위치에 코드를 삽입합니다.
Public 메서드 AddMacro 특정 파일에 #define 요소를 추가합니다.
Public 메서드 AddMap 개체에 맵 엔트리를 추가합니다.
Public 메서드 AddNamespace 새 네임스페이스 코드 구문을 만든 다음 올바른 위치에 코드를 삽입합니다.
Public 메서드 AddStruct 새 구조체 코드 구문을 만든 다음 올바른 위치에 코드를 삽입합니다.
Public 메서드 AddTypedef 특정 파일에 typedef 요소를 추가합니다.
Public 메서드 AddUnion VCCodeModel 개체에 union 요소를 추가합니다.
Public 메서드 AddUsing 특정 파일에 #using 요소를 추가합니다.
Public 메서드 AddUsingAlias 사용 하 여 추가 별칭입니다.
Public 메서드 AddVariable 새 변수 코드 구문을 만든 다음 올바른 위치에 코드를 삽입합니다.
Public 메서드 CodeElementFromFullName 개체에 대해 지정된 코드 요소의 컬렉션을 가져옵니다.
Public 메서드 CodeElementFromFullName2 개체에 대해 지정된 코드 요소의 컬렉션을 가져옵니다.조회하는 동안 네임스페이스를 무시한다는 점을 제외하고 CodeElementFromFullName과 동일합니다.
Public 메서드 CodeTypeFromFullName 정규화된 이름에 따라 코드 요소를 반환합니다.
Public 메서드 CodeTypeFromFullName2 정규화된 이름에 따라 코드 요소를 반환합니다.typedef 해결을 시도한다는 점을 제외하고 CodeTypeFromFullName과 동일합니다.
Public 메서드 CommitTransaction 개체에 대한 현재 트랜잭션을 커밋합니다.
Public 메서드 CreateCodeTypeRef 전달된 데이터 형식 표시기를 기준으로 하는 CodeTypeRef 개체입니다.
Public 메서드 DotNetNameFromLanguageSpecific 네임스페이스를 .NET 양식으로 변환합니다.
Public 메서드 ElementFromID 구현되지 않았습니다.
Public 메서드 GetClassesDerivedFrom 지정된 된 클래스에서 파생 된 클래스를 반환 합니다.
Public 메서드 IsValidID 지정된 이름이 현재 언어에 대해 올바른 프로그래밍 방식 식별자인지 여부를 반환합니다.
Public 메서드 LanguageSpecificNameFromDotNet 정규화된 이름을 관리되지 않는 네임스페이스 형식으로 변환합니다.
Public 메서드 Remove 지정한 프로젝트를 솔루션에서 제거합니다.
Public 메서드 RemoveEx 지정한 프로젝트를 솔루션에서 제거합니다.
Public 메서드 StartTransaction 트랜잭션을 시작합니다.
Public 메서드 Synchronize 솔루션에 있는 모든 코드 모델 개체를 소스 파일의 편집 내용과 동기화합니다.
Public 메서드 SynchronizeCancellable 진행률 표시줄이 있는 대화 상자를 표시합니다.사용자는 대기를 취소하고 스레드 차단을 해제할 수 있습니다.
Public 메서드 SynchronizeFiles 프로젝트 파일의 FileCodeModel 속성이 null이 아닌지 확인합니다.
Public 메서드 ValidateMember 제안된 이름이 부모 개체의 컨텍스트에서 지정된 종류에 유효한 C++ 이름인지 확인합니다.
Public 메서드 ValidateMemberName 요소의 이름을 확인합니다.

위쪽

설명

VCCodeModel 개체는 프로젝트 수준에서 (Visual C++ 포함) Visual Studio 지 원하는 다양 한 언어에 코드 모델 기능을 제공 합니다.

주로이 개체 (지정 된 정식 이름) 프로젝트 내에서 액세스할 수 있는 모든 코드 요소를 찾는 데 사용 됩니다. 또한 개체는 프로젝트가 작성 된 프로그래밍 언어를 지정 합니다.

참고

Visual Studio 제공 하는이 개체의 기능 중 많은 부분 CodeModel2 개체입니다.

사용 하는 경우는 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

참고 항목

참조

Microsoft.VisualStudio.VCCodeModel 네임스페이스