So wird’s gemacht: Behandeln von DRM-Fehlern (HTML)

[ Dieser Artikel richtet sich an Windows 8.x- und Windows Phone 8.x-Entwickler, die Windows-Runtime-Apps schreiben. Wenn Sie für Windows 10 entwickeln, finden Sie weitere Informationen unter neueste Dokumentation ]

Windows-Runtime-Apps können die Wiedergabe von Medieninhalten, die durch die Verwaltung digitaler Rechte (DRM) geschützt sind, mithilfe von MediaProtectionManager ermöglichen. Die "MediaError"-Schnittstelle wird um ein msExtendedCode-Attribut erweitert, sodass Entwickler bei der Implementierung Feedback erhalten können.

Im folgenden Code wird gezeigt, wie Sie MediaProtectionManager mit dem "msExtendedCode"-Attribut verwenden.

function DRMErrors() {
    var myVideo = document.getElementById("videoTag1");
    var cpm = new Windows.Media.Protection.MediaProtectionManager();
    cpm.addEventListener('servicerequested', EnableContent, false);
    myVideo.msSetMediaProtectionManager(cpm);

    myVideo.addEventListener('error', function onError() {
        var error = myVideo.error.msExtendedCode;
        // handle error.
    }, false);


    myVideo.addEventListener('canplay', function onCanplay() {
        myVideo.play();
    }, false);

    myVideo.src = "https://www.contoso.com/test.wmv";
}

function EnableContent(e) {
    if (typeof (e.request) != 'undefined') {
        var req = e.request;
        var system = req.protectionSystem;
        var type = req.type;

        // take necessary actions Based on the system and type;
    }
    if (typeof (e.completion) != 'undefined') { // requested action completed
        var comp = e.completion;       
        comp.complete(true);        
    }
}