인터넷의 비동기 모니커

인터넷은 느린 네트워크 액세스로 인해 애플리케이션 디자인에 대한 새로운 접근 방식이 필요합니다. 애플리케이션은 사용자 인터페이스가 중단되는 것을 방지하기 위해 네트워크 액세스를 비동기적으로 수행해야 합니다. MFC 클래스 CAsyncMonikerFile 은 파일 다운로드에 대한 비동기 지원을 제공합니다.

비동기 모니커를 사용하면 COM 애플리케이션을 확장하여 인터넷을 통해 비동기적으로 다운로드하고 비트맵 및 VRML 개체와 같은 큰 개체의 점진적 렌더링을 제공할 수 있습니다. 비동기 모니커를 사용하면 사용자 인터페이스의 응답을 차단하지 않고 인터넷의 ActiveX 컨트롤 속성 또는 파일을 다운로드할 수 있습니다.

비동기 모니커의 장점

비동기 모니커를 사용하여 다음을 수행할 수 있습니다.

  • 차단 없이 코드 및 파일을 다운로드합니다.

  • 차단 없이 ActiveX 컨트롤에서 속성을 다운로드합니다.

  • 다운로드 진행률 알림을 받습니다.

  • 진행률 및 준비 상태 정보를 추적합니다.

  • 진행 상황에 대한 상태 정보를 사용자에게 제공합니다.

  • 사용자가 언제든지 다운로드를 취소할 수 있도록 허용합니다.

비동기 모니커에 대한 MFC 클래스

CAsyncMonikerFile은 CMonikerFile에서 파생되며, COleStreamFile에서 파생됩니다. 개체는 COleStreamFile 데이터 CMonikerFile 스트림을 나타내고CAsyncMonikerFile, 개체는 데이터를 가져오는 데 사용하고IMoniker, 개체는 비동기적으로 이 작업을 수행합니다.

비동기 모니커는 주로 인터넷 지원 애플리케이션 및 ActiveX 컨트롤에서 파일 전송 중에 반응형 사용자 인터페이스를 제공하는 데 사용됩니다. 다음은 CDataPathProperty를 사용하여 ActiveX 컨트롤에 대한 비동기 속성을 제공하는 예제입니다.

ActiveX 컨트롤의 데이터 경로에 대한 MFC 클래스

MFC 클래스 및 CDataPathProperty CCachedDataPathProperty 는 비동기적으로 로드할 수 있는 ActiveX 컨트롤 속성을 구현합니다. 비동기 속성은 동기 시작 후에 로드됩니다. 비동기 ActiveX 컨트롤은 긴 속성 교환 프로세스 중에 새 데이터의 가용성을 나타내기 위해 콜백을 반복적으로 호출합니다.

CDataPathPropertyCAsyncMonikerFile에서 파생됩니다. CCachedDataPathPropertyCDataPathProperty에서 파생됩니다. ActiveX 컨트롤에서 비동기 속성을 구현하려면 클래스를 CDataPathProperty 파생하거나 CCachedDataPathPropertyOnDataAvailable 및 수신하려는 기타 알림을 재정의합니다.

비동기 모니커를 사용하여 파일을 다운로드하려면

  1. CAsyncMonikerFile에서 파생된 클래스를 선언합니다.

  2. OnDataAvailable을 재정의하여 데이터를 표시합니다.

  3. OnProgress, OnStartBinding 및 OnStopBinding을 비롯한 다른 멤버 함수를 재정의합니다.

  4. 이 클래스의 인스턴스를 선언하고 이를 사용하여 URL을 엽니다.

ActiveX 컨트롤에서 비동기적으로 다운로드하는 방법에 대한 자세한 내용은 인터넷의 ActiveX 컨트롤을 참조하세요.

참고 항목

MFC 인터넷 프로그래밍 작업
MFC 인터넷 프로그래밍 기본 사항