Freigeben über


ISCPSecureQuery::MakeDecision-Methode (mswmdm.h)

Die MakeDecision-Methode bestimmt, ob der Zugriff auf den Inhalt zulässig ist. Wenn der Zugriff zulässig ist, gibt diese Methode die Schnittstelle zurück, die für den Zugriff auf den Inhalt verwendet wird.

Syntax

HRESULT MakeDecision(
  [in]      UINT                fuFlags,
  [in]      BYTE                *pData,
  [in]      DWORD               dwSize,
  [in]      DWORD               dwAppSec,
  [in]      BYTE                *pbSPSessionKey,
  [in]      DWORD               dwSessionKeyLen,
  [in]      IMDSPStorageGlobals *pStorageGlobals,
  [out]     ISCPSecureExchange  **ppExchange,
  [in, out] BYTE [8]            abMac
);

Parameter

[in] fuFlags

Flags, die die Daten beschreiben, die dem Anbieter von sicheren Inhalten zum Treffen von Entscheidungen zur Verfügung gestellt werden. Dieser Parameter muss im Authentifizierungscode der Eingabenachricht enthalten sein. Die folgenden Flags können vorhanden sein.

Flag Beschreibung
WMDM_SCP_DECIDE_DATA Der pData-Parameter verweist auf die zu untersuchenden Daten.
WMDM_MODE_TRANSFER_PROTECTED Die Ausgabeobjektdaten der ISCPSecureExchange-Schnittstelle müssen geschützt werden. Wenn Windows Media Geräte-Manager keines oder beide Modusflags festlegt, entscheidet DRM, ob die Ausgabeobjektdaten der ISCPSecureExchange-Schnittstelle geschützt oder nicht geschützt werden müssen.
WMDM_MODE_TRANSFER_UNPROTECTED Die Ausgabeobjektdaten der ISCPSecureExchange-Schnittstelle müssen nicht geschützt sein. Wenn Windows Media Geräte-Manager keines oder beide Modusflags festlegt, entscheidet DRM, ob die Ausgabeobjektdaten der ISCPSecureExchange-Schnittstelle geschützt oder nicht geschützt werden müssen.

[in] pData

Zeiger auf ein Datenobjekt, das die zu untersuchenden Daten enthält. Dieser Parameter muss im Authentifizierungscode der Eingabenachricht enthalten sein und verschlüsselt sein.

[in] dwSize

DWORD , das die Länge der zu untersuchenden Daten in Bytes enthält. Dieser Parameter muss im Authentifizierungscode der Eingabenachricht enthalten sein.

[in] dwAppSec

DWORD, das die aktuelle Sicherheitsstufe von Windows Media Geräte-Manager angibt. Dies ist die kleinere der aktuellen Sicherheitsebenen der Anwendung und des Zieldienstanbieters. Dieser Parameter muss im Authentifizierungscode der Eingabenachricht enthalten sein.

[in] pbSPSessionKey

Zeiger auf ein Bytearray, das den Sitzungsschlüssel zum Sichern der Kommunikation mit dem Dienstanbieter enthält, auf den pStgGlobals verweist. Dieser Parameter muss im Authentifizierungscode der Eingabenachricht enthalten sein und verschlüsselt sein.

[in] dwSessionKeyLen

Länge des Bytearrays, auf das pbSPSessionKey verweist. Dieser Parameter muss im Authentifizierungscode der Eingabenachricht enthalten sein.

[in] pStorageGlobals

Zeiger auf die IWMDMStorageGlobals-Schnittstelle im Stammspeicher des Mediums oder Geräts, auf das bzw. von dem die Datei übertragen wird. Dieser Parameter muss im Authentifizierungscode der Eingabenachricht enthalten sein.

[out] ppExchange

Zeiger auf ein Exchange-Objekt, das die Exchange-Schnittstelle empfängt.

[in, out] abMac

Array von acht Bytes, das den Nachrichtenauthentifizierungscode für die Parameterdaten dieser Methode enthält. (WMDM_MAC_LENGTH ist als 8 definiert.)

Rückgabewert

Wenn die Methode erfolgreich ist, wird S_OK zurückgegeben. Wenn ein Fehler auftritt, wird ein HRESULT-Fehlercode zurückgegeben.

Rückgabecode Beschreibung
WMDM_E_CALL_OUT_OF_SEQUENCE
Diese Methode wurde außerhalb der Reihenfolge aufgerufen.
WMDM_E_MAC_CHECK_FAILED
Der Nachrichtenauthentifizierungscode ist ungültig.
WMDM_E_MOREDATA
Windows Media Geräte-Manager muss diese Methode erneut mit einem anderen Datenpaket aufrufen. Die Größe des Pakets wird durch den pdwMinDecisionData-Parameter in der ISCPSecureQuery::GetDataDemands-Methode bestimmt.
S_FALSE
Der Aufrufer verfügt nicht über die erforderlichen Rechte, um die angeforderte Übertragung durchzuführen.
E_INVALIDARG
Ein Parameter ist ungültig oder ein NULL-Zeiger .
E_FAIL
Es ist ein unbekannter Fehler aufgetreten.

Hinweise

Diese Methode wird nach der ISCPSecureQuery::ExamineData-Methode aufgerufen und trifft die endgültige Entscheidung, ob der Zugriff auf den Inhalt zulässig ist.

Anforderungen

Anforderung Wert
Zielplattform Windows
Kopfzeile mswmdm.h
Bibliothek Mssachlp.lib

Weitere Informationen

ISCPSecureExchange-Schnittstelle

ISCPSecureQuery-Schnittstelle

ISCPSecureQuery2::MakeDecision2

IWMDMStorageGlobals-Schnittstelle