// d3d10umddi.h
PFND3D11_1DDI_GETCRYPTOKEYEXCHANGETYPE Pfnd3d111DdiGetcryptokeyexchangetype;
HRESULT Pfnd3d111DdiGetcryptokeyexchangetype(
D3D10DDI_HDEVICE hDevice,
const GUID *pCryptoType,
const GUID *pDecodeProfile,
UINT Index,
GUID *pKeyExchangeType
)
{...}
View the official Windows Driver Kit DDI referenceNo description available.
Queries the type of key exchange that is supported by the cryptographic engine of the display adapter for a specified encryption algorithm and video decoder profile.
hDeviceA handle to the display device (graphics context).
pCryptoTypeA pointer to a GUID that specifies the type of encryption algorithm to query.
pDecodeProfileA pointer to a GUID that specifies the decoder profile to query.
IndexThe zero-based index of the key exchange type.
pKeyExchangeTypeA pointer to a GUID that specifies the supported key exchange type for the specified index.
GetCryptoKeyExchangeType returns one of the following values:
| Return code | Description |
|---|---|
| S_OK | The content protection capabilities were queried successfully. |
| D3DERR_INVALID_CRYPTO | The encryption algorithm specified by the pCryptoType parameter is not supported. |
The GetCryptoKeyExchangeType function can be called to query the key exchange types for any index from 0 to (D3D11_1DDI_VIDEO_CONTENT_PROTECTION_CAPS.KeyExchangeTypeCount– 1).
The pCryptoType parameter can contain one of the following values:
D3DCRYPTOTYPE_AES128_CTR if the driver is configured to use the 128-bit Advanced Encryption Standard CTR mode (AES-CTR) block cipher.
D3DCRYPTOTYPE_PROPRIETARY if the driver is configured to use a proprietary encryption algorithm.
NULL_GUID if the driver is not configured to use any encryption algorithm.
[!NOTE] The Microsoft Direct3D runtime verifies that the pDecodeProfile, pCryptoType, and Index parameter data is valid before it calls the GetCryptoKeyExchangeType function.
D3D11_1DDI_VIDEO_CONTENT_PROTECTION_CAPS