COM 클라이언트 및 서버

COM의 중요한 측면은 클라이언트와 서버가 상호 작용하는 방식입니다. COM 클라이언트는 COM 서버에 대한 포인터를 가져오고 해당 인터페이스의 메서드를 호출하여 해당 서비스를 사용하는 코드 또는 개체입니다. COM 서버는 클라이언트에 서비스를 제공하는 모든 개체입니다. 이러한 서비스는 서버 개체의 인터페이스 중 하나에 대한 포인터를 가져올 수 있는 모든 클라이언트에서 호출할 수 있는 COM 인터페이스 구현 형식입니다.

in-process 및 out-of-process의 두 가지 기본 유형의 서버가 있습니다. In-process 서버는 DLL(동적 연결 라이브러리)에서 구현되고 Out-of-process 서버는 EXE(실행 파일)에서 구현됩니다. Out-of-process 서버는 로컬 컴퓨터 또는 원격 컴퓨터에 상주할 수 있습니다. 또한 COM은 서로게이트 EXE 프로세스에서 DLL(In Process Server)을 실행하여 원격 컴퓨터에서 프로세스를 실행할 수 있는 이점을 얻을 수 있는 메커니즘을 제공합니다. 자세한 내용은 DLL 서로게이트를 참조하세요.

COM 프로그래밍 모델 및 구문이 확장되어 COM 클라이언트와 서버가 지정된 컴퓨터 내에서뿐만 아니라 네트워크를 통해 함께 작동할 수 있습니다. 이를 통해 기존 애플리케이션은 적절한 관리를 통해 네트워크 간에 새 애플리케이션과 상호 작용할 수 있으며 네트워킹 기능을 활용하기 위해 새 애플리케이션을 작성할 수 있습니다.

COM 클라이언트 애플리케이션은 서버 개체가 패키지되는 방법, DLL 내 프로세스 개체 또는 로컬 또는 원격 개체(EXE)로 패키지되는지 여부를 알 필요가 없습니다. 또한 분산 COM을 사용하면 개체를 서비스 애플리케이션으로 패키지하여 COM을 Windows의 풍부한 관리 및 시스템 통합 기능과 동기화할 수 있습니다.

참고

이 설명서 전체에서 머리글자어 COM은 DCOM을 기본 설정으로 사용합니다. 이는 DCOM이 분리되어 있지 않기 때문입니다. 더 긴 와이어가 있는 COM일 뿐입니다. 설명되는 내용이 특히 원격 작업인 경우 분산 COM 이라는 용어가 사용됩니다.

 

COM은 네트워크를 통해 확장되는 위치 투명도에 대한 지원을 추가할 수 있도록 설계되었습니다. 단일 컴퓨터용으로 작성된 애플리케이션을 네트워크에서 실행할 수 있으며 이러한 기능을 확장하고 네트워크에 필요한 보안을 추가하는 기능을 제공합니다. (자세한 내용은 COM의 보안을 참조하세요.)

COM은 다양한 애플리케이션에서 클래스 코드를 사용할 수 있는 메커니즘을 지정합니다.

자세한 내용은 아래 항목을 참조하세요.

통화 동기화

COM의 보안