Metodo ISCPSecureQuery3::MakeDecisionOnClearChannel (mswmdm.h)
Il metodo MakeDecisionOnClearChannel determina se l'accesso al contenuto è consentito in un canale chiaro. Se l'accesso è consentito, questo metodo restituisce l'interfaccia usata per accedere al contenuto.
Sintassi
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
);
Parametri
[in] fuFlags
Flag che descrivono i dati offerti al provider di contenuti per prendere decisioni. I flag seguenti possono essere presenti.
Flag | Descrizione |
---|---|
WMDM_SCP_DECIDE_DATA | Il parametro pData punta ai dati da esaminare. |
WMDM_MODE_TRANSFER_PROTECTED | I dati dell'oggetto di output dell'interfaccia ISCPSecureExchange devono essere protetti. Se Windows Media Gestione dispositivi imposta nessuno o entrambi i flag di modalità, digital rights management (DRM) decide se i dati dell'oggetto di output dell'interfaccia ISCPSecureExchange devono essere protetti o non protetti. |
WMDM_MODE_TRANSFER_UNPROTECTED | I dati dell'oggetto di output dell'interfaccia ISCPSecureExchange devono essere non protetti. Se Windows Media Gestione dispositivi imposta nessuno o entrambi i flag di modalità, digital rights management (DRM) decide se i dati dell'oggetto di output dell'interfaccia ISCPSecureExchange devono essere protetti o non protetti. |
[in] pData
Puntatore a un oggetto dati contenente i dati da esaminare.
[in] dwSize
DWORD contenente la lunghezza, in byte, dei dati da esaminare.
[in] dwAppSec
DWORD che indica il livello corrente di sicurezza di Windows Media Gestione dispositivi. Si tratta dei livelli di sicurezza correnti dell'applicazione e del provider di servizi di destinazione.
[in] pbSPSessionKey
Puntatore a una matrice di byte contenente la chiave di sessione per proteggere la comunicazione con il provider di servizi a cui pStgGlobals punta.
[in] dwSessionKeyLen
Lunghezza della matrice di byte a cui pbSPSessionKey punta.
[in] pStorageGlobals
Puntatore all'interfaccia IWMDMStorageGlobals nella risorsa di archiviazione radice del supporto o del dispositivo a o da cui viene trasferito il file.
[in] pProgressCallback
Puntatore a un oggetto callback di stato.
[in] pAppCertApp
Puntatore a un certificato dell'applicazione dell'oggetto applicazione.
[in] dwAppCertAppLen
DWORD contenente la lunghezza, in byte, del certificato dell'applicazione.
[in] pAppCertSP
Puntatore al certificato dell'applicazione dell'oggetto provider di servizi.
[in] dwAppCertSPLen
DWORD contenente la lunghezza, in byte, del certificato dell'applicazione.
[in, out] pszRevocationURL
Puntatore a un buffer per contenere l'URL di revoca.
[in, out] pdwRevocationURLLen
Puntatore a una DWORD contenente le dimensioni del buffer rpszRevocationURL in byte.
[out] pdwRevocationBitFlag
Puntatore a un DWORD contenente il flag di bit di revoca. Il valore del flag sarà zero o uno o più dei nomi di flag seguenti combinati usando un or bit per bit.
Valore | Descrizione |
---|---|
WMDM_WMDM_REVOKED | Windows Media Gestione dispositivi è stato revocato. |
WMDM_APP_REVOKED | L'applicazione è stata revocata e deve essere aggiornata prima che sia possibile trasferire qualsiasi contenuto protetto da DRM. |
WMDM_SP_REVOKED | Il provider di servizi è stato revocato e deve essere aggiornato prima che qualsiasi contenuto protetto da DRM possa essere trasferito a esso. |
WMDM_SCP_REVOKED | Il provider di contenuti è stato revocato e deve essere aggiornato prima che qualsiasi contenuto protetto da DRM possa essere trasferito. |
[in, out] pqwFileSize
Puntatore a un QWORD contenente le dimensioni del file. Il provider di contenuto è responsabile dell'aggiornamento di questo valore o dell'impostazione su zero se la dimensione del file di destinazione non può essere determinata a questo punto.
[in] pUnknown
Puntatore a un'interfaccia sconosciuta dall'applicazione.
[out] ppExchange
Puntatore a un oggetto exchange che riceve l'interfaccia di scambio.
Valore restituito
Se il metodo ha esito positivo, viene restituito S_OK. Se il metodo ha esito negativo, restituisce un codice di errore HRESULT .
Codice restituito | Descrizione |
---|---|
|
Questo metodo è stato chiamato fuori dalla sequenza. |
|
Il codice di autenticazione del messaggio non è valido. |
|
Windows Media Gestione dispositivi deve chiamare di nuovo questo metodo con un altro pacchetto di dati. Le dimensioni del pacchetto sono determinate dal parametro pdwMinDecisionData nel metodo ISCPSecureQuery::GetDataDemands . |
|
Il chiamante non dispone dei diritti necessari per eseguire il trasferimento richiesto. |
|
Un parametro non è valido o è un puntatore NULL . |
|
Si è verificato un errore non specificato. |
Commenti
Questo metodo è identico a ISCPSecureQuery2::MakeDecision2, ad eccezione del fatto che i parametri passati a questo metodo non vengono crittografati. Di conseguenza, questo metodo è più efficiente.
Requisiti
Requisito | Valore |
---|---|
Piattaforma di destinazione | Windows |
Intestazione | mswmdm.h |
Libreria | Mssachlp.lib |