COM 상호 운용

COM Interop

COM Interop은 에 포함되어 있는 테크놀로지입니다.NET Framework Common Language Runtime(CLR; 공통 언어 런타임)을 통해 Component Object Model(COM; 컴포넌트 오브젝트 모델) 객체와 상호 작용할 수 있습니다.NET 오브젝트 및 그 반대도 마찬가지입니다.

COM Interop은 원래 컴포넌트를 변경할 필요 없이 기존 COM 컴포넌트에 대한 접근을 제공하는 것을 목적으로 합니다.를 작성하려고 합니다.COM 타입에 상당하는 NET 타입.또한 COM Interop을 통해 COM 개발자는 다른 COM 개체에 액세스하는 것처럼 쉽게 관리 개체에 액세스할 수 있습니다.

상호 운용 도구

를 사용하여 COM 컴포넌트를 지원하는 도구.NET 어셈블리

.NET Framework는 구성 요소가 등록될 때 유형 라이브러리와 특수 레지스트리 항목을 생성합니다.전용 유틸리티를 제공합니다(RegAsm.exe(통상은,C:\Windows\Microsoft.NET\Framework)는 관리대상 유형을 유형 라이브러리로 내보내고 관리대상 컴포넌트를 기존 COM 컴포넌트로 등록합니다.유형이 COM을 통해 인스턴스화되면,는NET CLR은 실행되는 실제 COM 개체이며, 형식 구현에 대한 메서드 호출 또는 속성 액세스를 마셜링할 뿐입니다.

등록이 필요 없는 COM을 사용하여 DLL Hell을 회피할 수 있습니다.

를 지원하기 위한 도구.COM 컴포넌트를 사용한NET 어셈블리

기존 COM 컴포넌트의 COM Interop은 를 사용하여 생성할 수 있습니다.Tlbimp.exe에 부속되어 있습니다.NET Framework SDK. 도구는 어셈블리에 캡슐화된 CIL에 구현된 프록시 클래스 세트를 만듭니다.

세부 사항

COM interop은 에서 COM 사용을 간소화하기 위해 다음 서비스를 자동으로 제공합니다.네트워크:

  • COM 타입과 동등한 타입의 변환.NET 타입
  • 번역retval인수를 반환값으로 변환합니다.
  • HRESULT 반환값을 예외로 변환합니다.

레퍼런스