DRM_LICENSE_STATE_DATA 構造体 (Drmexternals.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 個以上の DWORDの配列。 「解説」を参照してください。
-
dwNumDates
-
datetime で指定された項目の数。 通常、1 つの日付から別の日付まで有効なライセンスなど、2 つ以下の日付が使用されます。
-
datetime[4]
-
ライセンス内の 1 つ以上の日付を表す 1 つ以上の FILETIME 構造体の配列。 特定の日付の意味は、 dwCategory の値によって異なります。
-
dwVague
-
次のフラグのうち 0 個以上をビットごとの OR と組み合わせて使用します。
フラグ 説明 DRM_LICENSE_STATE_DATA_VAGUE 設定すると、コンテンツに適用されるライセンスが増える可能性があります。 DRM_LICENSE_STATE_DATA_OPL_PRESENT 設定されている場合、ライセンスには、アプリケーションの出力先に対して取得およびチェックする必要がある出力保護レベル (OPL) が含まれます。 DRM_LICENSE_STATE_DATA_SAP_PRESENT 設定されている場合は、セキュリティで保護されたオーディオ パス (SAP) を使用してコンテンツを配信する必要があります。
解説
この構造体は、DRM ライセンス状態プロパティのいずれかを指定すると、IWMDRMReader::GetDRMProperty の呼び出しから (WM_LICENSE_STATE_DATA構造体にカプセル化されます) 返されます。 それらのプロパティは以下のとおりです。
- DRM_LicenseState_Playback
- DRM_LicenseState_CopyToCD
- DRM_LicenseState_CopyToSDMIDevice
- DRM_LicenseState_CopyToNonSDMIDevice
- DRM_LicenseState_CollaborativePlay
- DRM_LicenseState_Copy
- DRM_LicenseState_PlaylistBurn
dwCategory がWM_DRM_LICENSE_STATE_COUNT_FROM_UNTIL場合、datetime 配列には通常、"from" 日付と "until" 日付の 2 つの日付が含まれます。 2 つの日付ペアを指定して、より複雑なライセンスを作成することもできます。
dwCount 配列の要素は、datetime 配列で指定された日付または日付範囲に対応します。 dwCategory がWM_DRM_LICENSE_STATE_COUNT_FROM_UNTILで、datetime に 1 組の日付が含まれている場合、dwCount には 1 つの要素が含まれます。 datetime に 2 つの日付ペア (4 つの要素) が含まれている場合、dwCount には 2 つの要素 (日付ペアごとに 1 つ) が含まれている必要があります。
場合によっては、ユーザーが 1 つのファイルに対して複数のライセンスを発行されている可能性があります。 たとえば、月の終わりまで 5 つの再生を許可するライセンスを取得し、後で無制限の権利の 2 つ目のライセンスを取得した可能性があります。 このような場合、DRM_LICENSE_STATE_DATA_VAGUE フラグは dwVague (dwVague & DRM_LICENSE_STATE_DATA_VAGUE != 0
) に設定され、DRM コンポーネントはアルゴリズムを使用して、適用されている最も可能性の高い権限セットを決定します。 1 つのライセンスの有効期限が切れると、DRM コンポーネントは、すべてのライセンスの有効期限が切れるまで、残りのライセンスを調べます。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント |
Windows 2000 Professional [デスクトップ アプリのみ] |
サポートされている最小のサーバー |
Windows 2000 Server [デスクトップ アプリのみ] |
バージョン |
Windows Media Format 7 SDK 以降のバージョンの SDK |
ヘッダー |
|