ATLMovie 属性示例:在 ATL 控件中使用编译器 COM 支持和 Active Movie 接口

更新:2007 年 11 月

ATLMovie 属性示例是一个 ATL 控件,说明如何使用编译器 COM 支持和 Active Movie 接口播放影片。它在其 IMovieCtl 接口上实现若干个 COM 属性和方法。

安全说明:

提供该示例代码是为了阐释一个概念,并不代表着最安全的编码实践,因此不应在应用程序或网站中使用该示例代码。对于超出本示例代码的预期用途以外的使用所造成的偶然或继发性损失,Microsoft 不承担任何责任。

获取示例和安装示例的说明:

  • 在 Visual Studio 的“帮助”菜单上,单击“示例”。

    有关更多信息,请参见定位示例文件

  • 示例的最新版本和完整列表可以从 Visual Studio 2008 Samples page(Visual Studio 2008 示例页面)联机获取。

  • 还可以在计算机的硬盘上查找示例。默认情况下,示例和自述文件将复制到 \Program Files\Visual Studio 9.0\Samples\ 下的文件夹中。对于 Visual Studio 速成版,所有示例都位于联机位置。

生成并运行示例

生成并运行此示例

  1. 打开解决方案文件 ATLMovie.sln。

  2. 从“生成”菜单中单击“生成”。

  3. 示例生成后,在 Web 浏览器中打开 MovieCtl.htm。这将播放 Windows 附带的 clock.avi 文件。

    可能需要编辑 MovieCtl.htm 并更新该行:

    MovieCtl.FileName = "C:\Winnt\Clock.AVI"

    以指向特定系统的 Clock.AVI 文件所在位置。

属性和方法

属性

名称

说明

FileName

要播放的影片的文件名。

方法

名称

说明

Pause

暂停当前播放的影片。

Play

播放 FileName 属性指向的影片。

Reset

将播放位置重置到影片的开始处。

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++ 向导、库和编译器中所做的更改,但仍演示了如何完成所需的任务。

请参见

其他资源

ATL 属性示例