다음을 통해 공유


DRM_LICENSE_STATE_DATA 구조체(Wmdrmsdk.h)

DRM_LICENSE_STATE_DATA 구조에는 DRM 권한에 대한 라이선스 제한에 대한 정보가 포함되어 있습니다.

구문

typedef struct DRM_LICENSE_STATE_DATA {
  DWORD                      dwStreamId;
  DRM_LICENSE_STATE_CATEGORY dwCategory;
  DWORD                      dwNumCounts;
  DWORD                      dwCount[4];
  DWORD                      dwNumDates;
  FILETIME                   datetime[4];
  DWORD                      dwVague;
} ;

멤버

dwStreamId

라이선스가 적용되는 스트림 번호입니다. 라이선스가 파일의 모든 스트림에 적용됨을 나타내는 0이어야 합니다.

dwCategory

표시할 문자열의 범주입니다. 가능한 값과 해당 의미는 DRM_LICENSE_STATE_CATEGORY 참조하세요.

dwNumCounts

dwCount에 제공된 항목 수입니다. 이 값은 일반적으로 0 또는 1입니다.

dwCount[4]

dwCategory에 지정된 작업이 수행될 수 있는 횟수를 나타내는 0개 또는 1개 이상의 DWORD 값 배열입니다. 설명 부분을 참조하세요.

dwNumDates

datetime에 제공된 항목 수입니다. 일반적으로 한 날짜부터 다른 날짜까지 유효한 라이선스와 함께 두 개 이하의 날짜가 사용됩니다.

datetime[4]

라이선스에서 하나 이상의 날짜를 나타내는 하나 이상의 FILETIME 구조체 배열입니다. 특정 날짜의 의미는 dwCategory 값에 따라 달라집니다.

dwVague

비트 OR와 결합된 다음 플래그 중 0개 이상:

플래그 설명
DRM_LICENSE_STATE_DATA_VAGUE 설정된 경우 콘텐츠에 적용되는 라이선스가 더 있을 수 있습니다. 지정된 키 ID에 적용되는 개별 라이선스에 대해 확신할 수 있는 유일한 방법은 라이선스를 열거하는 것입니다. 이렇게 하려면 키 ID를 bstrKID 매개 변수로 전달하여 IWMDRMLicenseManagement::CreateLicenseEnumeration을 호출합니다. 그런 다음 검색된 IWMDRMLicense 인터페이스를 사용하여 라이선스를 검사합니다.
DRM_LICENSE_STATE_DATA_OPL_PRESENT 설정된 경우 라이선스에는 애플리케이션 출력 대상에 대해 검색하고 확인해야 하는 OPL(출력 보호 수준)이 포함됩니다.
DRM_LICENSE_STATE_DATA_SAP_PRESENT 설정된 경우 SAP(보안 오디오 경로)를 사용하여 콘텐츠를 배달해야 합니다.

설명

이 구조체는 IWMDRMLicenseQuery::QueryLicenseState를 호출하여 검색됩니다.

dwCategoryWM_DRM_LICENSE_STATE_COUNT_FROM_UNTIL 경우 datetime 배열에는 일반적으로 "from" 날짜와 "until" 날짜의 두 날짜가 포함됩니다. 더 복잡한 라이선스를 만들기 위해 두 개의 날짜 쌍을 지정할 수도 있습니다.

dwCount 배열의 요소는 datetime 배열에 지정된 날짜 또는 날짜 범위에 해당합니다. dwCategoryWM_DRM_LICENSE_STATE_COUNT_FROM_UNTILdatetime에 한 쌍의 날짜가 포함된 경우 dwCount에는 하나의 요소가 포함됩니다. datetime에 두 개의 날짜 쌍(4개 요소)이 포함된 경우 dwCount에는 각 날짜 쌍에 대해 하나씩 두 개의 요소가 포함되어야 합니다.

경우에 따라 사용자가 파일에 대해 둘 이상의 라이선스를 발급했을 수 있습니다. 예를 들어 월말까지 5회 재생을 허용하는 라이선스를 획득하고 나중에 무제한 권한에 대한 두 번째 라이선스를 획득했을 수 있습니다. 이러한 경우 DRM_LICENSE_STATE_DATA_VAGUE 플래그는 dwVague (dwVague & DRM_LICENSE_STATE_DATA_VAGUE != 0)로 설정되고 DRM 구성 요소는 알고리즘을 사용하여 적용된 가장 가능성이 높은 권한 집합을 결정합니다. 하나의 라이선스가 만료되면 DRM 구성 요소는 모든 라이선스가 만료될 때까지 나머지 라이선스를 검사합니다.

요구 사항

요구 사항
헤더
Wmdrmsdk.h

추가 정보

구조체