다음을 통해 공유


자동화 서버

자동화를 사용 하면 응용 프로그램 개체를 조작할 수 있도록 노출 하거나 다른 응용 프로그램에서 구현 된 개체를 조작할 수 있습니다.자동화 서버를 자동화 개체) 프로그래밍 가능 개체 (다른 응용 프로그램에 노출 하는 응용 프로그램입니다 (호출 자동화 클라이언트).자동화 서버를 자동화 구성 요소 라고도 합니다.

클라이언트가 개체에 직접 액세스 하 여 특정 프로시저를 자동화할 수 있도록 자동화 개체를 노출 하 고 서버 기능을 사용할 수 있습니다.응용 프로그램이 다른 응용 프로그램에 유용한 기능을 제공 하는 경우이 방식으로 개체를 노출 하는 것이 좋습니다.예를 들어, 다른 프로그램에서 사용할 수 있도록 워드 프로세서에 맞춤법 검사 기능을 노출 될 수 있습니다.개체 노출을 따라서 공급 업체가 다른 응용 프로그램의 기존 기능을 사용 하 여 응용 프로그램의 기능을 향상 시킬 수 있습니다.

이러한 자동화 개체 속성 및 메서드를 외부 인터페이스로 사용 했습니다.자동화 개체의 특성을 명명 된 속성입니다.속성은 다음과 같이 C++ 클래스의 데이터 멤버입니다.메서드는 자동화 개체를 사용 하는 함수입니다.C + + 클래스의 공용 멤버 함수와 마찬가지로 메서드입니다.

[!참고]

C + + 데이터 구성원 처럼 속성 이지만, 직접 액세스할 수 없습니다.투명 한 액세스를 제공 하는 내부 변수를 get/set 멤버 함수 쌍을 사용해 자동화 개체에 액세스할 수 설정 합니다.

일반적이 고 잘 정의 된 인터페이스를 통해 응용 프로그램 기능을 노출 하 여 자동화 응용 프로그램에는 하나의 일반 프로그래밍 언어와 마찬가지로 Microsoft Visual Basic 대신에 다양 한, 응용 프로그램 고유의 매크로 언어를 빌드할 수 있습니다.

자동화 서버 지원

Visual C++ 및 MFC 프레임 워크는 자동화 서버에 대 한 광범위 한 지원을 제공합니다.많은 응용 프로그램의 기능에 모든 노력을 집중할 수 있도록 자동화 서버를 만드는 작업된 오버 헤드 처리 합니다.

프레임 워크의 자동화 지원을 위한 주요 메커니즘으로 선언과 호출에 대 한 OLE 메서드 및 속성을 노출 하는 데 필요한 확장 매크로 집합인 디스패치 맵,입니다.일반적인 디스패치 맵은 다음과 같습니다.

BEGIN_DISPATCH_MAP(CMyServerDoc, COleServerDoc)
    DISP_PROPERTY(CMyServerDoc, "Msg", m_strMsg, VT_BSTR)
    DISP_FUNCTION(CMyServerDoc, "SetDirty", SetDirty, VT_EMPTY, VTS_I4)
END_DISPATCH_MAP()

속성 창과 클래스 뷰 디스패치 맵을 관리할 수 있습니다.클래스에 새 메서드 또는 속성을 추가 하면 해당 하는 Visual C++ 추가 DISP_FUNCTION 또는 DISP_PROPERTY 매크로 클래스 이름, 메서드 또는 속성 및 데이터 형식의 외부 및 내부 이름을 나타내는 매개 변수를 사용 합니다.

클래스 추가 대화 상자가 또한 단순화 자동화 클래스 선언과 속성 및 작업을 관리 합니다.프로젝트에 클래스를 추가 하려면 클래스 추가 대화 상자를 사용 하면 기본 클래스를 지정 합니다.기본 클래스가 자동화를 허용 하는 경우 사용 하는 COM 클라이언트에 대 한 외부 이름과 "(즉, 개체는 클래스의 COM 클라이언트에서 요청을 만들 수 있는지), OLE 생성 가능" 여부 새 클래스 자동화를 지원 하는지 여부를 지정 하는 데 사용할 컨트롤이 클래스 추가 대화 상자를 표시 합니다.

클래스 추가 대화 상자 클래스 선언을 만듭니다 다음, OLE 기능에 대 한 적절 한 매크로 포함 하 여 지정 합니다.또한 기본 클래스의 멤버 함수 구현 위한 코드를 추가합니다.

MFC 응용 프로그램 마법사의 자동화 서버 응용 프로그램 시작 단계에서 단계를 단순화 합니다.선택 하는 경우는 자동화 확인란에서의 고급 기능 MFC 응용 프로그램 마법사는 응용 프로그램의 추가 페이지 InitInstance 자동화 개체를 등록 하 고 응용 프로그램을 자동화 서버로 실행 하는 데 필요한 호출을 작동 합니다.

6wx53dax.collapse_all(ko-kr,VS.110).gif수행할 작업

참고 항목

참조

MFC 응용 프로그램 마법사

개념

자동화