D3DDDIENCRYPTED_BLOCK_INFO 結構 (d3dumddi.h)

D3DDDIENCRYPTED_BLOCK_INFO 結構描述已加密的緩衝區部分。

語法

typedef struct _D3DDDIENCRYPTED_BLOCK_INFO {
  [in] UINT NumEncryptedBytesAtBeginning;
  [in] UINT NumBytesInSkipPattern;
  [in] UINT NumBytesInEncryptPattern;
} D3DDDIENCRYPTED_BLOCK_INFO;

成員

[in] NumEncryptedBytesAtBeginning

已加密之緩衝區開頭的位元元組數目。

[in] NumBytesInSkipPattern

在加密再次啟動之前,從加密略過之緩衝區中的位元元組數目。

[in] NumBytesInEncryptPattern

在略過模式之後加密的緩衝區位元組數目, NumBytesInSkipPattern 成員會指定此模式。 接著會重複略過和加密模式,直到緩衝區結束為止。 如需skip-encrypt模式的詳細資訊,請參閱一節。

備註

由於緩衝區的加密部分是以位元組方式指定,因此應用程式必須確定加密的區塊符合 GPU 的加密區塊對齊方式。

執行時間可以在記憶體區塊中指定填入D3DDDIENCRYPTED_BLOCK_INFO結構,當執行時間呼叫驅動程式的 DecryptionBlt 函式,將數據寫入受保護的表面時,D3DDDIARG_DECRYPTIONBLT 結構的 pEncryptedBlockInfo 成員會指向 。

下列範例示範運行時間如何分割緩衝區的加密。

  1. 下列值會加密緩衝區的前 100 個字節,並略過其餘的緩衝區數據:
    • NumEncryptedBytesAtBeginning = 100;
    • NumBytesInSkipPattern = 0;
    • NumBytesInEnycryptPattern = 0;
  2. 下列值會加密緩衝區的前 100 個字節、略過接下來的 20 個字節,然後加密下一個 2 個字節區塊。 接著會重複此程式,其中這些值會略過 20 個字節,並加密 2 個字節,直到緩衝區結尾為止。
    • NumEncryptedBytesAtBeginning = 100;
    • NumBytesInSkipPattern = 20;
    • NumBytesInEnycryptPattern = 2;

規格需求

需求
最低支援的用戶端 從 Windows 7 操作系統開始,支援D3DDDIENCRYPTED_BLOCK_INFO。
標頭 d3dumddi.h (include D3dumddi.h)

另請參閱

D3DDDIARG_DECRYPTIONBLT

DecryptionBlt