// d3dumddi.h
typedef struct _D3DDDIARG_DECRYPTIONBLT {
[in] HANDLE hCryptoSession;
[in] HANDLE hSrcResource;
[in] UINT SrcSubResourceIndex;
[in] HANDLE hDstResource;
[in] UINT DstSubResourceIndex;
[in] UINT SrcResourceSize;
[in] D3DDDIENCRYPTED_BLOCK_INFO *pEncryptedBlockInfo;
[in] VOID *pContentKey;
[in] VOID *pIV;
} D3DDDIARG_DECRYPTIONBLT;
View the official Windows Driver Kit DDI referenceNo description available.
The D3DDDIARG_DECRYPTIONBLT structure describes the parameters of a decrypted bit-block transfer (bitblt) in a call to the DecryptionBlt function.
hCryptoSession [in]A handle to the encryption session.
hSrcResource [in]A handle to the source resource.
SrcSubResourceIndex [in]The index to the source surface within the resource.
hDstResource [in]A handle to the destination resource.
DstSubResourceIndex [in]The index to the destination surface within the resource.
SrcResourceSize [in]The size, in bytes, of the source resource.
pEncryptedBlockInfo [in]A pointer to a D3DDDIENCRYPTED_BLOCK_INFO structure that describes the portions of the buffer that are encrypted.
pContentKey [in]A pointer to a block of memory that contains the content key that is required to decrypt the bitblt data. If pContentKey is NULL, hardware does not require a separate content key to decrypt the data. That is, the session key is used to encrypt the data.
pIV [in]A pointer to a block of memory that contains the initialization vector that is required to decrypt the bitblt data. If pIV is NULL, hardware does not require a separate initialization vector to decrypt the data. That is, the session key is used to encrypt the data.
A pointer to a populated D3DDDIARG_DECRYPTIONBLT structure is passed to the driver's DecryptionBlt function to write data to a protected surface.