차례:
정의-RCW (런타임 호출 가능 래퍼) 란 무엇입니까?
RCW (런타임 호출 가능 래퍼)는 CLR (공용 언어 런타임)에서 .NET 어셈블리로 노출하기 위해 COM (구성 요소 개체 모델) 개체를 캡슐화하기 위해 생성 한 래퍼 개체입니다.
RCW는 .NET 클라이언트에 대한 기본 인터페이스 역할을하며, .NET 클라이언트는 호출을 마샬링하여 COM 구성 요소와 상호 작용해야합니다. COM 구성 요소를 CLR에 노출시키는 메타 데이터 래퍼를 형성합니다. 기존 ActiveX 컨테이너가 .NET 컨트롤을 호스팅하고 .NET Windows Forms 응용 프로그램이 ActiveX 컨테이너를 호스팅하는 데 도움이됩니다. RCW는 COM 구성 요소를 사용하여 구축 된 비즈니스 시스템에도 유용하므로 생산성에 영향을주지 않고 기존 레거시 코드를 새로 개발 된 .NET 구성 요소와 통합 할 수 있습니다.
Techopedia는 RCW (런타임 호출 가능 래퍼)를 설명합니다.
COM 구성 요소는 클라이언트와의 통신이 발생하는 인터페이스를 게시하여 서비스를 제공하는 이진 재사용 가능 개체입니다. COM 구성 요소의 인터페이스 또는 이진 계약에 대한 정의는 인터페이스 유형 라이브러리에 지정되어 있습니다. COM과 달리 .NET 개체 간의 통신은 인터페이스 기반이 아니라 개체 기반입니다. RCW는 COM 구성 요소와 .NET 개체 간의 브리지 역할을하여 마샬링을 통해 작업을 라우팅하고 둘 사이를 중재합니다.
RCW는 캡슐화 된 COM 개체의 수명을 관리합니다. 두 응용 프로그램 도메인 또는 아파트간에 참조를 전달하는 동안 개체 프록시가 사용됩니다. RCW 작성은 유형 라이브러리에서 파생 된 메타 데이터를 기반으로합니다. 가비지 콜렉션 중에 소멸됩니다. RCW에 의한 마샬링에는 클라이언트와 서버 모두에서 읽을 수있는 방식으로 표시되도록 메소드 인수와 리턴 값의 변환이 포함됩니다. 마샬링의 예로는 COM 구성 요소의 BSTR 형식으로 전달되어야하는 문자열 인수에 대해 발생하는 변환이있을 수 있지만 .NET 클라이언트에서는 문자열 형식이어야합니다.
RCW는 자동 코드 생성 기능을 사용하는 Visual Studio를 사용하여 만들 수 있으며, 사용자에게 프로세스를 간단하고 투명하게 만듭니다. 또는 RCW 어셈블리에는 구성 요소의 형식 라이브러리에 정의 된 형식에 대한 메타 데이터가 포함되어 있으며 명령 줄에서 tlbimp.exe 도구를 사용하여 만들 수 있습니다.
이 정의는 .NET의 맥락에서 작성되었습니다.