Share via


CodeModelMacros 샘플: 코드 모델 함수 사용 방법

업데이트: 2007년 11월

이 샘플은 코드 모델을 사용하여 유용한 작업을 수행하는 매크로의 컬렉션입니다. 포함된 매크로는 다음과 같습니다.

  • HierarchyGenerator   프로젝트의 클래스, 구조체 및 인터페이스에 대한 상속 트리가 포함된 HTML 파일을 생성합니다.

    이 매크로는 먼저 파생 형식이 없는 터미널 클래스, 구조체 또는 인터페이스의 컬렉션을 어셈블합니다. 이때 기본 컬렉션의 다른 코드 요소에 해당 클래스, 구조체 또는 인터페이스가 없는지 확인하는 방법이 사용됩니다. 그런 다음에는 모든 기본 형식이 포함된 터미널 개체를 나열하는 HTML 보고서를 생성합니다. 이 매크로는 생성한 파일을 솔루션의 첫 번째 프로젝트에 추가합니다.

  • InterfaceDocGenerator   프로젝트에 구현된 인터페이스에 대한 HTML 설명서를 생성하고, 인터페이스 메서드를 구현하는 클래스 함수에서 주석을 수집합니다.

    이 매크로는 CodeModel.Interfaces 컬렉션에 포함된 인터페이스를 열거한 다음 각 인터페이스를 구현하는 클래스를 찾습니다. 각 클래스에 대해 해당 인터페이스의 메서드 구현을 조회하고 HTML 파일에 주석을 저장합니다.

  • UserTypeGenerator   프로젝트의 클래스 이름이 포함된 usertype.dat라는 파일을 생성합니다. 이 파일을 c:\Program Files\Microsoft Visual Studio .NET 2003\Common7\IDE와 같이 devenv.exe가 있는 동일한 위치에 놓으면 소스 코드 편집기에서 해당 클래스 이름을 컬러로 표시합니다.

    이 매크로는 CodeModel.Classes 컬렉션에 포함된 클래스의 이름을 usertype.dat 파일에 씁니다.

  • VirtualFunctionFinder   프로젝트에서 찾은 가상 함수에 TODO 주석을 추가합니다.

    VirtualFunctionFinder는 각 클래스 또는 구조체의 함수를 재귀적으로 검사하여 프로젝트에 선언된 가상 함수를 찾습니다. 그런 다음 CodeFunction.Comment 속성을 변경하여 각 가상 함수에 주석을 추가합니다.

보안 정보:

이 샘플 코드는 개념을 보여 주기 위해 제공되며 가장 안전한 코드 작성 방법을 제시하지 않을 수 있으므로 응용 프로그램이나 웹 사이트에서 사용할 수 없습니다. Microsoft는 샘플 코드를 원래 용도 이외의 다른 용도로 사용하는 경우 발생하는 부수적이나 파생적인 손해에 대해 책임을 지지 않습니다.

샘플 및 이를 설치하기 위한 지침을 가져오려면

  • Visual Studio의 도움말 메뉴에서 샘플을 클릭합니다.

    자세한 내용은 샘플 파일 찾기를 참조하십시오.

  • 최신 버전 및 전체 샘플 목록은 Visual Studio 2008 Samples 페이지에서 온라인으로 사용할 수 있습니다.

  • 컴퓨터의 하드 디스크에서도 샘플을 찾을 수 있습니다. 기본적으로 샘플과 추가 정보 파일은 \Program Files\Visual Studio 9.0\Samples\ 아래의 폴더에 복사됩니다. Visual Studio Express Edition의 경우에는 모든 샘플이 온라인에 있습니다.

샘플 설치 및 실행

매크로를 설치하려면

  1. CodeModelMacros.vsmacros 파일을 하드 드라이브에 복사합니다.

  2. Visual Studio를 시작합니다.

  3. 도구 메뉴에서 매크로를 가리킨 다음 매크로 탐색기를 클릭합니다. 매크로 탐색기 창이 열립니다.

  4. 도구 메뉴에서 매크로를 가리킨 다음 매크로 프로젝트 로드를 클릭합니다. 매크로 프로젝트 추가 대화 상자가 열립니다.

  5. CodeModelMacros.vsmacros 파일을 찾아 지정한 다음 열기 단추를 클릭합니다. 매크로 파일이 로드되어 매크로 탐색기에 표시됩니다.

  6. CodeModelMacros 노드를 확장합니다. 각 매크로에 대해 하나의 모듈이 표시됩니다.

HierarchyGenerator를 실행하려면

  1. 매크로 탐색기에서 HierarchyGenerator 노드를 확장합니다.

  2. HierarchyGenerator 매크로를 두 번 클릭합니다. 매크로가 실행되고 솔루션의 첫 번째 프로젝트에 HTML 파일이 추가됩니다.

InterfaceDocGenerator를 실행하려면

  1. 매크로 탐색기에서 InterfaceDocGenerator 노드를 확장합니다.

  2. InterfaceDocGenerator 매크로를 두 번 클릭합니다. 매크로가 실행되고 솔루션의 첫 번째 프로젝트에 HTML 파일이 추가됩니다.

UserTypeGenerator를 실행하려면

  1. 매크로 탐색기에서 UserTypeGenerator 노드를 확장합니다.

  2. UsertypeC 매크로를 두 번 클릭합니다. 매크로가 실행되고 C: 드라이브의 루트 디렉터리에 usertype.dat 파일이 만들어집니다.

VirtualFunctionFinder를 실행하려면

  1. 매크로 탐색기에서 VirtualFunctionFinder 노드를 확장합니다.

  2. MainVirtualFunctionFinder 매크로를 두 번 클릭합니다. 매크로가 실행되고 프로젝트에 선언된 가상 함수에 TODO 주석이 추가됩니다.

키워드

이 샘플에서는 다음의 키워드를 보여 줍니다.

CodeClass::Members, CodeElement.CodeTypeFromFullName, CodeElement::Children, CodeElement::FullName, CodeElement::Kind, CodeFunction::CanOverride, CodeFunction::Comment, CodeFunction::InfoLocation, CodeFunction::Name, CodeInterface::Name, CodeModel::CodeElements, CodeModel::Language, CodeNamespace::Members, CodeStruct::Members, CodeType::Bases, Project::CodeModel, Solution::Count, VCCodeBase::FullName, VCCodeBase::Name, VCCodeClass::Functions, VCCodeClass::ImplementedInterfaces, VCCodeClass::IsSelf, VCCodeClass::Name, VCCodeFunction::Attributes, VCCodeFunction::Comment, VCCodeFunction::IsVirtual, VCCodeInterface::Functions, VCCodeModel::Classes, VCCodeModel::Interfaces

참고 항목

기타 리소스

코드 모델 샘플