ISCPSecureQuery3 ::MakeDecisionOnClearChannel, méthode (mswmdm.h)
La méthode MakeDecisionOnClearChannel détermine si l’accès au contenu est autorisé sur un canal en clair. Si l’accès est autorisé, cette méthode retourne l’interface utilisée pour accéder au contenu.
Syntaxe
HRESULT MakeDecisionOnClearChannel(
[in] UINT fuFlags,
[in] BYTE *pData,
[in] DWORD dwSize,
[in] DWORD dwAppSec,
[in] BYTE *pbSPSessionKey,
[in] DWORD dwSessionKeyLen,
[in] IMDSPStorageGlobals *pStorageGlobals,
[in] IWMDMProgress3 *pProgressCallback,
[in] BYTE *pAppCertApp,
[in] DWORD dwAppCertAppLen,
[in] BYTE *pAppCertSP,
[in] DWORD dwAppCertSPLen,
[in, out] LPWSTR *pszRevocationURL,
[in, out] DWORD *pdwRevocationURLLen,
[out] DWORD *pdwRevocationBitFlag,
[in, out] ULONGLONG *pqwFileSize,
[in] IUnknown *pUnknown,
[out] ISCPSecureExchange **ppExchange
);
Paramètres
[in] fuFlags
Indicateurs décrivant les données offertes au fournisseur de contenu pour prendre des décisions. Les indicateurs suivants peuvent être présents.
Indicateur | Description |
---|---|
WMDM_SCP_DECIDE_DATA | Le paramètre pData pointe vers les données à examiner. |
WMDM_MODE_TRANSFER_PROTECTED | Les données de l’objet de sortie de l’interface ISCPSecureExchange doivent être protégées. Si Windows Media Gestionnaire de périphériques définit aucun indicateur de mode ou les deux, la gestion des droits numériques (DRM) détermine si les données d’objet de sortie de l’interface ISCPSecureExchange doivent être protégées ou non protégées. |
WMDM_MODE_TRANSFER_UNPROTECTED | Les données de l’objet de sortie de l’interface ISCPSecureExchange doivent être non protégées. Si Windows Media Gestionnaire de périphériques définit aucun indicateur de mode ou les deux, la gestion des droits numériques (DRM) détermine si les données d’objet de sortie de l’interface ISCPSecureExchange doivent être protégées ou non protégées. |
[in] pData
Pointeur vers un objet de données contenant les données à examiner.
[in] dwSize
DWORD qui contient la longueur, en octets, des données à examiner.
[in] dwAppSec
DWORD qui indique le niveau de sécurité actuel de Windows Media Gestionnaire de périphériques. Il s’agit du plus petit des niveaux de sécurité actuels de l’application et du fournisseur de services cible.
[in] pbSPSessionKey
Pointeur vers un tableau d’octets contenant la clé de session pour sécuriser la communication avec le fournisseur de services vers lequel pStgGlobals pointe.
[in] dwSessionKeyLen
Longueur du tableau d’octets vers lequel pbSPSessionKey pointe.
[in] pStorageGlobals
Pointeur vers l’interface IWMDMStorageGlobals sur le stockage racine du média ou de l’appareil vers ou à partir duquel le fichier est transféré.
[in] pProgressCallback
Pointeur vers un objet de rappel de progression.
[in] pAppCertApp
Pointeur vers un certificat d’application de l’objet d’application.
[in] dwAppCertAppLen
DWORD contenant la longueur, en octets, du certificat d’application.
[in] pAppCertSP
Pointeur vers le certificat d’application de l’objet fournisseur de services.
[in] dwAppCertSPLen
DWORD contenant la longueur, en octets, du certificat d’application.
[in, out] pszRevocationURL
Pointeur vers une mémoire tampon pour contenir l’URL de révocation.
[in, out] pdwRevocationURLLen
Pointeur vers un DWORD contenant la taille de la mémoire tampon rpszRevocationURL en octets.
[out] pdwRevocationBitFlag
Pointeur vers un DWORD contenant l’indicateur de bit de révocation. La valeur de l’indicateur sera égale à zéro ou à un ou plusieurs des noms d’indicateurs suivants combinés à l’aide d’un or au niveau du bit.
Valeur | Description |
---|---|
WMDM_WMDM_REVOKED | Windows Media Gestionnaire de périphériques lui-même a été révoqué. |
WMDM_APP_REVOKED | L’application a été révoquée et doit être mise à jour avant que tout contenu protégé par DRM puisse être transféré. |
WMDM_SP_REVOKED | Le fournisseur de services a été révoqué et doit être mis à jour avant que tout contenu protégé par DRM puisse lui être transféré. |
WMDM_SCP_REVOKED | Le fournisseur de contenu a été révoqué et doit être mis à jour avant que tout contenu protégé par DRM puisse être transféré. |
[in, out] pqwFileSize
Pointeur vers un QWORD contenant la taille de fichier. Le fournisseur de contenu est responsable de la mise à jour de cette valeur ou de sa définition sur zéro si la taille du fichier de destination ne peut pas être déterminée à ce stade.
[in] pUnknown
Pointeur vers une interface inconnue de l’application.
[out] ppExchange
Pointeur vers un objet exchange qui reçoit l’interface exchange.
Valeur retournée
Si la méthode réussit, retourne S_OK. Si la méthode échoue, elle retourne un code d’erreur HRESULT .
Code de retour | Description |
---|---|
|
Cette méthode a été appelée hors séquence. |
|
Le code d’authentification du message n’est pas valide. |
|
Windows Media Gestionnaire de périphériques devez appeler à nouveau cette méthode avec un autre paquet de données. La taille du paquet est déterminée par le paramètre pdwMinDecisionData dans la méthode ISCPSecureQuery ::GetDataDemands . |
|
L’appelant ne dispose pas des droits requis pour effectuer le transfert demandé. |
|
Un paramètre n’est pas valide ou est un pointeur NULL . |
|
Une erreur non spécifiée s'est produite. |
Remarques
Cette méthode est identique à ISCPSecureQuery2 ::MakeDecision2 , sauf que les paramètres passés à cette méthode ne sont pas chiffrés. Par conséquent, cette méthode est plus efficace.
Configuration requise
Condition requise | Valeur |
---|---|
Plateforme cible | Windows |
En-tête | mswmdm.h |
Bibliothèque | Mssachlp.lib |