다음을 통해 공유


IManagedAddin 인터페이스

IManagedAddin 인터페이스를 구현하여 관리 VSTO 추가 기능을 로드하는 구성 요소를 만듭니다. 이 인터페이스는 2007 Microsoft Office 시스템에 추가되었습니다.

구문

[
    object,
    uuid(B9CEAB65-331C-4713-8410-DDDAF8EC191A),
    pointer_default(unique),
    oleautomation
]
interface IManagedAddin : IUnknown
{
    HRESULT Load(
        [in] BSTR bstrManifestURL,
        [in] IDispatch *pdispApplication);
    HRESULT Unload();
};

메서드

다음 표에서는 IManagedAddin 인터페이스에서 정의한 메서드를 보여 줍니다.

이름 설명
IManagedAddin::Load Microsoft Office 애플리케이션에서 관리되는 VSTO 추가 기능을 로드할 때 호출됩니다.
IManagedAddin::Unload Microsoft Office 애플리케이션에서 관리되는 VSTO 추가 기능을 언로드하기 직전에 호출됩니다.

설명

Microsoft Office 응용 프로그램은 2007 Microsoft Office 시스템부터 IManagedAddin 인터페이스를 사용하여 Office VSTO 추가 기능을 로드하는 데 도움이 됩니다. IManagedAddin 인터페이스를 구현하여 VSTO 추가 기능 로더(VSTOLoader.dll) 및 Visual Studio Tools for Office 런타임을 사용하는 대신 관리되는 VSTO 추가 기능에 대한 고유한 VSTO 추가 기능 로더 및 런타임을 만들 수 있습니다. 자세한 내용은 Architecture of VSTO Add-ins을 참조하세요.

관리 추가 기능 로드 방법

다음 단계는 애플리케이션을 시작할 때 발생합니다.

  1. 애플리케이션에서는 다음 레지스트리 키에서 항목을 검색하여 VSTO 추가 기능을 찾습니다.

    HKEY_CURRENT_USER\Software\Microsoft\Office\<application name>\Addins\

    이 레지스트리 키의 각 항목은 VSTO 추가 기능의 고유 ID입니다. 일반적으로 VSTO 추가 기능 어셈블리의 이름입니다.

  2. 애플리케이션은 각 VSTO 추가 기능에 대한 항목에서 Manifest 항목을 찾습니다.

    관리 VSTO 추가 기능은 매니페스트의 전체 경로를 HKEY_CURRENT_USER\Software\Microsoft\Office\<application name>\Addins\<추가 기능 ID>Manifest 항목에 저장할 수 있습니다. 매니페스트는 VSTO 추가 기능을 로드하는 데 사용되는 정보를 제공하는 파일(일반적으로 XML 파일)입니다.

  3. 애플리케이션에서 Manifest 항목을 찾으면 관리되는 VSTO 추가 기능 로더 구성 요소를 로드하려고 합니다. 응용 프로그램은 IManagedAddin 인터페이스를 구현하는 COM 개체를 만들어 이 작업을 수행합니다.

    Visual Studio Tools for Office 런타임에는 VSTO 추가 기능 로더 구성 요소(VSTOLoader.dll)가 포함되거나 IManagedAddin 인터페이스를 구현하여 직접 만들 수 있습니다.

  4. 애플리케이션은 IManagedAddin::Load 메서드를 호출하여 Manifest 항목의 값을 전달합니다.

  5. IManagedAddin::Load 메서드는 로드 중인 VSTO 추가 기능을 위한 보안 정책 및 애플리케이션 도메인을 구성하는 등 VSTO 추가 기능을 로드하는 데 필요한 작업을 수행합니다.

    Microsoft Office 응용 프로그램에서 관리되는 VSTO 추가 기능을 검색 및 로드하는 데 사용하는 레지스트리 키에 대한 자세한 내용은 VSTO 추가 기능 레지스트리 항목를 참조하세요.

IManagedAddin 구현 지침

IManagedAddin을 구현하는 경우 다음 CLSID를 사용하여 구현이 포함된 DLL을 등록해야 합니다.

99D651D7-5F7C-470E-8A3B-774D5D9536AC

Microsoft Office 응용 프로그램에서는 이 CLSID를 사용하여 IManagedAddin를 구현하는 COM 개체를 만듭니다.

주의

이 CLSID는 Visual Studio Tools for Office 런타임의 VSTOLoader.dll에서 사용합니다. 그러므로 IManagedAddin을 사용하여 자체 VSTO 추가 기능 로더 및 런타임 구성 요소를 만든 경우 Visual Studio Tools for Office 런타임을 사용하는 VSTO 추가 기능을 실행 중인 컴퓨터에 구성 요소를 배포할 수 없습니다.

참고 항목