struktur DRM_LICENSE_STATE_DATA (Drmexternals.h)
Struktur DRM_LICENSE_STATE_DATA berisi informasi lisensi tentang hak DRM tertentu.
Sintaks
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;
} ;
Anggota
-
dwStreamId
-
Nomor streaming tempat lisensi berlaku. Harus 0, yang menunjukkan bahwa lisensi berlaku untuk semua aliran dalam file.
-
dwCategory
-
Kategori string yang akan ditampilkan. Lihat DRM_LICENSE_STATE_CATEGORY untuk kemungkinan nilai dan maknanya.
-
dwNumCounts
-
Jumlah item yang disediakan dalam dwCount. Nilai ini biasanya 0 atau 1.
-
dwCount[4]
-
Array 0 atau 1 atau lebih DWORDs yang mewakili berapa kali tindakan yang ditentukan dalam dwCategory dapat dilakukan. Lihat keterangan.
-
dwNumDates
-
Jumlah item yang disediakan dalam tanggalwaktu. Biasanya tidak lebih dari dua tanggal digunakan, misalnya, dengan lisensi yang berlaku dari satu tanggal hingga tanggal lain.
-
datetime[4]
-
Array dari satu atau beberapa struktur FILETIME yang mewakili satu atau beberapa tanggal dalam lisensi. Arti tanggal tertentu tergantung pada nilai dwCategory.
-
dwVague
-
Nol atau lebih dari bendera berikut dikombinasikan dengan bitwise OR:
Bendera Deskripsi DRM_LICENSE_STATE_DATA_VAGUE Jika diatur, mungkin ada lebih banyak lisensi yang berlaku untuk konten. DRM_LICENSE_STATE_DATA_OPL_PRESENT Jika diatur, lisensi menyertakan tingkat perlindungan output (OPLs) yang harus diambil dan diperiksa terhadap tujuan output aplikasi Anda. DRM_LICENSE_STATE_DATA_SAP_PRESENT Jika diatur, konten harus dikirim menggunakan jalur audio aman (SAP).
Keterangan
Struktur ini dikembalikan (dienkapsulasi dalam struktur WM_LICENSE_STATE_DATA ) dari panggilan ke IWMDRMReader::GetDRMProperty saat Anda menentukan salah satu properti status lisensi DRM. Properti tersebut adalah:
- DRM_LicenseState_Playback
- DRM_LicenseState_CopyToCD
- DRM_LicenseState_CopyToSDMIDevice
- DRM_LicenseState_CopyToNonSDMIDevice
- DRM_LicenseState_CollaborativePlay
- DRM_LicenseState_Copy
- DRM_LicenseState_PlaylistBurn
Jika dwCategoryWM_DRM_LICENSE_STATE_COUNT_FROM_UNTIL, maka array tanggalwaktu biasanya akan berisi dua tanggal, tanggal "dari" dan tanggal "until". Dua pasangan tanggal juga dapat ditentukan untuk membuat lisensi yang lebih kompleks.
Elemen array dwCount sesuai dengan tanggal atau rentang tanggal yang ditentukan dalam array tanggalwaktu . Jika dwCategoryWM_DRM_LICENSE_STATE_COUNT_FROM_UNTIL dan tanggalwaktu berisi satu pasang tanggal, maka dwCount akan berisi satu elemen. Jika tanggalwaktu berisi dua pasangan tanggal (empat elemen), maka dwCount harus berisi dua elemen, satu untuk setiap pasangan tanggal.
Dalam beberapa kasus, pengguna mungkin telah mengeluarkan lebih dari satu lisensi untuk file. Misalnya, mereka mungkin telah memperoleh lisensi yang memungkinkan lima pemutaran hingga akhir bulan, dan kemudian memperoleh lisensi kedua untuk hak tak terbatas. Dalam kasus seperti itu, bendera DRM_LICENSE_STATE_DATA_VAGUE diatur dalam dwVague (dwVague & DRM_LICENSE_STATE_DATA_VAGUE != 0
) dan komponen DRM akan menggunakan algoritma untuk menentukan kumpulan hak yang paling mungkin yang telah diterapkan. Ketika satu lisensi kedaluwarsa, komponen DRM akan memeriksa lisensi yang tersisa, dan sebagainya sampai semua lisensi kedaluwarsa.
Persyaratan
Persyaratan | Nilai |
---|---|
Klien minimum yang didukung |
Windows 2000 Professional [hanya aplikasi desktop] |
Server minimum yang didukung |
Windows 2000 Server [hanya aplikasi desktop] |
Versi |
Windows Media Format 7 SDK, atau versi SDK yang lebih baru |
Header |
|