다음을 통해 공유


자동화 모델 사용

VSPackage를 자동화에 연결한 후에는 _DTE 개체에서 GetObject 메서드를 호출하고 검색할 개체를 나타내는 문자열을 전달함으로써 속성과 메서드를 가져올 수 있습니다.

프로젝트 개체 가져오기

다음은 자동화 소비자가 프로젝트 자동화 개체를 가져오는 방법을 보여 주는 두 가지 코드 예제입니다. DTE 개체를 가져오는 방법에 대한 내용은 방법: DTE 및 DTE2 개체에 대한 참조 가져오기를 참조하세요.

Sub DoAutomation()
    Dim MyProjects As Projects
    MyProjects = DTE.GetObject("AcmeProject")
End Sub
void DoAutomation(void)
{
  CComQIPtr<Projects> pMyPkg; // Use an IDispatch-derived object type.
    pMyPkg = pDTE->GetObject("AcmeProjects");

   // The '=' performs a Query Interface.
   // Assumes pDTE is already available as a global.
   // Use pMyPkg to access your projects object's properties and methods.
}

이 시점에서 특정 VSPackage의 일부인 표준 프로젝트 개체를 사용하여 계층 구조 모델을 아래로 이동할 수 있습니다.

다음 코드 예제에서는 사용자 지정 프로젝트 형식의 속성인 사용자 지정 개체를 가져오는 방법을 보여 줍니다.

Dim MyPrj As Project
Dim MyPrjItem As ProjectItem
Dim objMyObject as MyExtendedObject

MyPrj = MyProjects.Item(1) 'use the Projects collection to get a project
objMyObject = MyPrj.Object 'You call .Object to get to special Project
                           'implementation
objMyObject.MySpecialMethodOrProperty

다음 코드는 도구 메뉴의 Visual Studio 환경 일반 옵션에 있는 모든 속성의 이름을 나열합니다.

dim objDTE
dim objEnv
set objDTE = CreateObject("VisualStudio.DTE")
set objEnv = objDTE.Properties("Environment", "General")
for each obj in ObjEnv
MsgBox obj.Name
Next