연결된 개체 및 모니커
포함된 개체와 같은 연결된 개체는 개체 처리기를 사용하여 서버 애플리케이션과 통신합니다. 그러나 연결된 개체 자체는 링크 원본의 명명 및 추적을 관리합니다. 연결된 개체는 In-Process 서버처럼 작동합니다. 예를 들어 활성화되면 연결된 개체가 링크 원본인 OLE 서버 애플리케이션을 찾아서 시작합니다.
연결된 개체의 처리기는 처리기 구성 요소와 연결 구성 요소의 두 가지 기본 구성 요소로 구성됩니다. 처리기 구성 요소에는 포함된 개체에 대한 처리기와 유사한 제어 및 원격 조각과 함수가 포함되어 있습니다. 연결 구성 요소에는 자체 컨트롤러 및 캐시가 있으며 개체의 구조화된 스토리지에 대한 액세스를 제공합니다. 연결 구성 요소 컨트롤러는 모니커 및 바인딩을 사용하여 링크 원본을 찾고 실행하는 프로세스를 통해 소스 이름을 지정할 수 있습니다. (모니커 및 바인딩에 대한 자세한 내용은 구성 요소 개체 모델을 참조하세요.)
사용자가 처음에 연결된 개체를 만들거나 스토리지에서 기존 개체를 로드하면 컨테이너는 개체 처리기와 함께 연결 구성 요소의 instance 메모리에 로드합니다. 연결 구성 요소는 개체를 링크로 식별하고 링크 원본의 명명, 추적 및 업데이트를 관리할 수 있도록 하는 인터페이스(특히 IOleLink)를 제공합니다.
IOleLink 인터페이스를 구현하여 연결된 개체는 연결을 지원하는 함수를 컨테이너에 제공합니다. 연결된 개체만 IOleLink를 구현하며, 이 인터페이스를 쿼리하여 컨테이너는 지정된 개체가 포함되는지 또는 연결되어 있는지 여부를 확인할 수 있습니다. IOleLink에서 제공하는 가장 중요한 함수를 사용하면 컨테이너가 연결된 개체의 원본에 바인딩할 수 있습니다. 즉, 연결된 개체의 네이티브 데이터를 저장하는 문서에 대한 연결을 활성화할 수 있습니다. 또한 IOleLink 는 캐시된 프레젠테이션 데이터 및 링크 원본의 위치와 같은 연결된 개체에 대한 정보를 관리하기 위한 함수를 정의합니다.
연결된 개체가 포함된 복합 문서를 저장하면 링크의 데이터가 컨테이너가 아닌 링크 원본과 함께 저장됩니다. 이름과 위치에 대한 정보만 복합 문서와 함께 저장됩니다. 이 동작은 데이터가 컨테이너의 데이터와 함께 저장되는 포함된 개체의 동작과는 대조적입니다.
컨테이너 애플리케이션은 포함된 개체에 대한 정보를 제공하여 후자 또는 그 일부가 링크 원본으로 작동할 수 있도록 할 수 있습니다. 컨테이너의 포함된 개체에 연결하기 위한 지원을 구현하여 중첩된 포함을 가능하게 하여 링크가 필요한 모든 포함 개체의 원본을 추적해야 하는 사용자를 완화합니다. 예를 들어 사용자가 Microsoft Word Microsoft Excel 워크시트를 포함하려고 하고 워크시트에 Paintbrush에서 만든 비트맵이 포함된 경우 사용자는 원본이 아닌 워크시트에 포함된 비트맵의 복사본에 연결할 수 있습니다.
관련 항목