ATLMovie 특성 샘플: ATL 컨트롤에서 컴파일러 COM 지원 및 Active Movie 인터페이스 사용
업데이트: 2007년 11월
ATLMovie 특성 샘플은 컴파일러 COM 지원 및 Active Movie 인터페이스를 사용하여 동영상을 재생하는 방법을 보여 주는 ATL 컨트롤입니다. 이 샘플에서는 IMovieCtl 인터페이스에 몇 가지 COM 속성 및 메서드를 구현합니다.
보안 정보: |
---|
이 샘플 코드는 개념을 보여 주기 위해 제공되며 가장 안전한 코드 작성 방법을 제시하지 않을 수 있으므로 응용 프로그램이나 웹 사이트에서 사용할 수 없습니다. Microsoft는 샘플 코드를 원래 용도 이외의 다른 용도로 사용하는 경우 발생하는 부수적이나 파생적인 손해에 대해 책임을 지지 않습니다. |
샘플 및 이를 설치하기 위한 지침을 가져오려면
Visual Studio의 도움말 메뉴에서 샘플을 클릭합니다.
자세한 내용은 샘플 파일 찾기를 참조하십시오.
최신 버전 및 전체 샘플 목록은 Visual Studio 2008 Samples 페이지에서 온라인으로 사용할 수 있습니다.
컴퓨터의 하드 디스크에서도 샘플을 찾을 수 있습니다. 기본적으로 샘플과 추가 정보 파일은 \Program Files\Visual Studio 9.0\Samples\ 아래의 폴더에 복사됩니다. Visual Studio Express Edition의 경우에는 모든 샘플이 온라인에 있습니다.
샘플 빌드 및 실행
이 샘플을 빌드하고 실행하려면
솔루션 파일인 ATLMovie.sln을 엽니다.
빌드 메뉴에서 빌드를 클릭합니다.
샘플을 빌드한 후 웹 브라우저에서 MovieCtl.htm을 엽니다. 이렇게 하면 Windows와 함께 제공되는 clock.avi 파일이 재생됩니다.
MovieCtl.htm을 편집하여 다음 줄을 업데이트해야 할 수도 있습니다.
MovieCtl.FileName = "C:\Winnt\Clock.AVI"
즉, 위 줄을 사용자 시스템의 Clock.AVI 파일 위치를 가리키도록 업데이트해야 합니다.
속성 및 메서드
속성
이름 |
설명 |
---|---|
FileName |
재생할 동영상의 파일 이름입니다. |
메서드
이름 |
설명 |
---|---|
Pause |
현재 재생하고 있는 동영상을 일시 중지합니다. |
Play |
FileName 속성으로 지정된 동영상을 재생합니다. |
다시 설정 |
재생 위치를 동영상의 처음으로 다시 설정합니다. |
Stop |
동영상을 중지합니다. |
특성
이 샘플에서는 다음의 특성을 사용합니다.
coclass, dual, emitidl, helpstring, id, in, module, object, oleautomation, pointer_default, progid, propput, registration_script, threading, uuid
키워드
이 샘플에서는 다음의 키워드를 사용합니다.
BEGIN_COM_MAP, BEGIN_MSG_MAP, BEGIN_OBJECT_MAP, BEGIN_PROPERTY_MAP, CComCoClass, CComControl, CComModule::GetClassObject, CComModule::GetLockCount, CComModule::Init, CComModule::RegisterServer, CComModule::Term, CComModule::UnregisterServer, CComObjectRootEx, COM_INTERFACE_ENTRY, COM_INTERFACE_ENTRY_IMPL, COM_INTERFACE_ENTRY_IMPL_IID, CreateBrushIndirect, CreateFilterGraph, CWindow::GetDC, DECLARE_REGISTRY_RESOURCEID, DeleteObject, DisableThreadLibraryCalls, END_COM_MAP, END_MSG_MAP, END_OBJECT_MAP, END_PROPERTY_MAP, FillRect, GetProperty, IDispatchImpl, IMediaControlPtr::Pause, IMediaControlPtr::Release, IMediaControlPtr::RenderFile, IMediaControlPtr::Run, IMediaControlPtr::Stop, IMediaPositionPtr::CurrentPosition, IMediaPositionPtr::Duration, IObjectSafetyImpl, IOleControlImpl, IOleInPlaceActiveObjectImpl, IOleInPlaceObjectWindowlessImpl, IOleInPlaceObjectWindowlessImpl::SetObjectRects, IOleObjectImpl, IPersistStorageImpl, IPersistStreamInitImpl, IProvideClassInfo2Impl, IVideoWindowPtr ::Owner IVideoWindowPtr::.CreateInstance, IVideoWindowPtr::Owner, IVideoWindowPtr::SetWindowPosition, IVideoWindowPtr::Visible, IVideoWindowPtr::WindowStyle, IViewObjectExImpl, MESSAGE_HANDLER, OBJECT_ENTRY, OffsetRect, OleTranslateColor, Reset, SetWindowPosition, SysFreeString
참고: |
---|
이 샘플을 비롯한 일부 샘플은 Visual C++ 마법사, 라이브러리 및 컴파일러의 변경 내용을 반영하도록 수정되지 않았지만 해당 작업의 수행 방법을 보여 줍니다. |