Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
[Fitur yang terkait dengan halaman ini, Windows Media Format 11 SDK , adalah fitur warisan. Ini telah digantikan oleh Pembaca Sumber dan Penulis Sink. Pembaca Sumber dan Penulis Sink telah dioptimalkan untuk Windows 10 dan Windows 11. Microsoft sangat menyarankan agar kode baru menggunakan Pembaca Sumber dan Sink Writer alih-alih Windows Media Format 11 SDK , jika memungkinkan. Microsoft menyarankan agar kode yang ada yang menggunakan API warisan ditulis ulang untuk menggunakan API baru jika memungkinkan.]
Ada beberapa pemrosesan tambahan yang harus Anda lakukan untuk aplikasi apa pun yang menggunakan WINDOWS Media DRM Client Extended API. Topik ini menjelaskan persyaratan untuk aplikasi sederhana.
Pertama, Anda harus menginisialisasi WINDOWS Media DRM Client Extended API dengan memanggil fungsiWMDRMStartup. Objek SDK adalah objek COM, tetapi Anda tidak perlu memanggil CoIntialize, karena fungsi WMDRMStatup menginisialisasi COM untuk Anda.
Nota
Windows Media Format SDK hanya menggunakan subset COM, jadi jika Anda menggunakan objek COM selain yang ada di Windows Media DRM Client Extended API, Anda masih harus memanggil CoInitialize.
Semua objek WINDOWS Media DRM Client Extended API dibuat menggunakan fungsi dan metode pembantu. Anda tidak perlu memanggil CoCreateInstance untuk membuat objek. Antarmuka pertama yang membuat instans untuk aplikasi apa pun yang menggunakan SDK adalah IWMDRMProvider, yang dapat Anda gunakan untuk membuat instans semua antarmuka dasar lainnya. Untuk mendapatkan instans IWMDRMProvider, Anda harus memanggil WMDRMCreateProvider atau WMDRMCreateProtectedProvider. Perbedaan antara fungsi-fungsi ini adalah bahwa WMDRMCreateProvider membuat objek yang pada gilirannya hanya dapat membuat objek yang tidak mendukung metode yang memerlukan pustaka stub.
Setelah Anda memiliki instans IWMDRMProvider, Anda dapat membuat objek lain yang Anda butuhkan dengan memanggil IWMDRMProvider::CreateObject.
Ketika Anda siap untuk keluar dari aplikasi, Anda harus merilis sumber daya subsistem DRM dengan memanggil fungsiWMDRMShutdown. Fungsi ini juga mematikan COM untuk Anda.
Contoh kode berikut menunjukkan cara menginisialisasi dan menyimpulkan aplikasi yang menggunakan WINDOWS Media DRM Client Extended API.
#include <wmdrmsdk.h>
// TODO: Include other headers here as needed.
// This example demonstrates the code required in a single, simple
// main function. You will most likely break this code up into appropriate
// functions.
void main(void)
{
HRESULT hr = S_OK;
IWMDRMProvider* pProvider = NULL;
// For the sake of example, this code will instantiate the
// IWMDRMLicenseQuery interface. The process is the same for the
// other base interfaces.
IWMDRMLicenseQuery* pLicenseQuery = NULL;
// Initialize the DRM subsystem.
hr = WMDRMStartup();
// Create a provider object, that can be used to create the other
// objects.
if (SUCCEEDED(hr))
{
hr = WMDRMCreateProvider(&pProvider);
}
if(SUCCEEDED(hr))
{
hr = pProvider->CreateObject(
IID_IWMDRMLicenseQuery,
(void**)&pLicenseQuery);
}
// TODO: Use the methods of IWMDRMLicenseQuery as required.
// Cleanup and shutdown.
SAFE_RELEASE(pLicenseQuery);
SAFE_RELEASE(pProvider);
hr = WMDRMShutdown();
}
Topik terkait