指定要执行的操作

[与此页面关联的功能 Windows Media Format 11 SDK 是旧版功能。 它已被源读取器和接收器编写器取代。 源读取器和接收器编写器已针对Windows 10和Windows 11进行了优化。 Microsoft 强烈建议新代码尽可能使用源读取器和接收器编写器,而不是 Windows Media Format 11 SDK。 如果可能,Microsoft 建议重写使用旧 API 的现有代码以使用新 API。]

第一次调用 WMCreateReader 来创建读取器对象时,第二个参数是WMT_RIGHTS值的按位 OR。 使用此参数可指定 () 应用程序将对要打开的第一个文件执行的操作。 这些操作直接对应于可在许可证中指定的权限。 在后续调用 IWMReader::Open 时,可以通过调用 IWMDRMReader::SetDRMProperty、为 DRM_Rights 属性指定定义的常量,并使用 WCHAR 类型的字符串文本 () 以分号分隔来标识权限,来修改所请求的权限。 以下代码片段请求四个权限:播放文件、将其复制到设备,以及将其作为协作播放列表的一部分播放。

WCHAR wszRights[] = L"Play;Copy;CollaborativePlay";
p_WMDRMReader->SetDRMProperty(g_wszWMDRM_Rights, WMT_TYPE_STRING,
                              (BYTE*)wszRights, sizeof(wszRights));

注意

请勿将 DRM_Rights 属性与 DRM_Flags 属性混淆,该属性是一个 DWORD, 用于指定从 CD 复制内容时要应用于本地 DRM 版本 1 许可证的权限。

 

读取受保护的文件