클립보드: 기타 서식 추가

이 항목에서는 특히 OLE 지원을 위해 지원되는 형식 목록을 확장하는 방법을 설명합니다. 항목 클립보드: 데이터 복사 및 붙여넣기에서는 클립보드에서 복사 및 붙여넣기를 지원하는 데 필요한 최소 구현에 대해 설명합니다. 이 모든 것을 구현하면 클립보드에 배치되는 형식만 CF_METAFILEPICT, CF_EMBEDSOURCE, CF_OBJECTDESCRIPTOR CF_LINKSOURCE 수 있습니다. 대부분의 애플리케이션은 이 세 가지보다 클립보드에 더 많은 형식이 필요합니다.

사용자 지정 형식 등록

사용자 고유의 사용자 지정 형식을 만들려면 사용자 지정 클립보드 형식을 등록할 때 사용하는 것과 동일한 절차를 따릅니다. 형식 의 이름을 RegisterClipboardFormat 함수에 전달하고 해당 반환 값을 형식 ID로 사용합니다.

클립보드에 서식 배치

클립보드에 배치된 형식에 더 많은 형식을 추가하려면 복사할 데이터가 네이티브인지 여부에 따라 파생된 COleClientItem COleServerItem 클래스의 함수를 재정 OnGetClipboardData 의해야 합니다. 이 함수에서는 다음 절차를 사용해야 합니다.

클립보드에 서식을 배치하려면

  1. COleDataSource 개체를 만듭니다.

  2. 이 데이터 원본을 호출 COleDataSource::CacheGlobalData하여 지원되는 형식 목록에 네이티브 데이터 형식을 추가하는 함수에 전달합니다.

  3. 지원하려는 각 표준 형식을 호출 COleDataSource::CacheGlobalData 하여 표준 형식을 추가합니다.

이 기술은 MFC OLE 샘플 프로그램 HIERSVR(CServerItem 클래스의 멤버 함수 검사OnGetClipboardData)에서 사용됩니다. 이 샘플의 유일한 차이점은 HIERSVR이 다른 표준 형식을 지원하지 않기 때문에 3단계가 구현되지 않는다는 것입니다.

다음에 대해 자세히 알고 싶은 사항

참고 항목

클립보드: OLE 클립보드 메커니즘 사용