장치에 대한 COM 상호 운용성

업데이트: 2007년 11월

.NET Compact Framework에서는 COM 개체에 대해 런타임 호출 가능 래퍼("Interop 어셈블리"라고도 함)를 지원합니다. 이 기능에는 복잡한 형식의 마샬링이 포함되어 있습니다. 장치용 COM Interop는 데스크톱 구현을 기반으로 합니다. 그러므로 구성 요소를 데스크톱에 등록해야 합니다.

지원되는 시나리오

Visual Studio에서는 다음과 같은 시나리오가 장치 프로젝트에 대해 지원됩니다.

  • 기존 COM 구성 요소를 관리되는 프로젝트에 참조로 추가할 수 있습니다. 이 작업을 수행하면 interop 어셈블리가 만들어지고 자동으로 어셈블리가 참조로 추가됩니다. 그런 다음에는 관리되는 어셈블리와 마찬가지로 interop 어셈블리를 사용할 수 있으며 개체의 속성, 메서드 및 이벤트를 IntelliSense에 대해 사용하거나 개체 브라우저에서 사용할 수 있습니다. 추가할 수 있는 파일 형식은 DLL, EXE 및 TLB입니다.

  • 네이티브 프로젝트를 만들어서 COM 구성 요소를 생성한 다음 관리되는 프로젝트를 같은 솔루션에서 만들어서 COM 구성 요소를 사용할 수 있습니다. 이 프로세스는 데스크톱에 대해서도 동일하게 적용됩니다.

    • 네이티브 프로젝트를 설정하여 TLB 출력을 생성합니다.

    • 네이티브 프로젝트를 컴파일하여 DLL을 생성합니다.

    • 관리되는 프로젝트에서 DLL에 대한 참조를 추가합니다. 이렇게 하면 interop 어셈블리가 생성됩니다.

지원되지 않는 시나리오

다음과 같은 시나리오는 Visual Studio에서 지원되지 않습니다.

  • 관리되는 프로젝트에서 기존 ActiveX COM 구성 요소 참조

  • 비시스템 자식 구성 요소를 가진 COM 개체

  • 데이터 소스 마법사에서 비즈니스 개체로 참조된 COM 개체

참고 항목

작업

연습: Hello World: 스마트 장치에 대한 COM Interop 예제

연습: 관리 코드와 네이티브 코드가 모두 포함된 솔루션 디버깅

개념

COM Interop 소개

RCW

선택한 인터페이스 마샬링

기타 리소스

.NET Framework 응용 프로그램의 COM 상호 운용성

.NET Compact Framework를 사용한 장치 프로그래밍

.NET Compact Framework의 상호 운용성