Compartir a través de


Método ID3D12InfoQueue::GetMessage (d3d12sdklayers.h)

Obtenga un mensaje de la cola de mensajes.

Sintaxis

HRESULT GetMessage(
  [in]            UINT64        MessageIndex,
  [out, optional] D3D12_MESSAGE *pMessage,
  [in, out]       SIZE_T        *pMessageByteLength
);

Parámetros

[in] MessageIndex

Tipo: UINT64

Indexe en la cola de mensajes después de aplicar un filtro de recuperación opcional. Esto puede estar comprendido entre 0 y el número de mensajes de la cola de mensajes que pasan por el filtro de recuperación (que se puede obtener con GetNumStoredMessagesAllowedByRetrievalFilter). 0 es el mensaje situado delante de la cola de mensajes.

[out, optional] pMessage

Tipo: D3D12_MESSAGE*

Mensaje devuelto.

[in, out] pMessageByteLength

Tipo: SIZE_T*

Tamaño de pMessage en bytes.

Valor devuelto

Tipo: HRESULT

Este método devuelve uno de los códigos de retorno de Direct3D 12.

Comentarios

Este método no quita ningún mensaje de la cola de mensajes.

Este método obtiene mensajes de la cola de mensajes después de aplicar un filtro de recuperación opcional.

Las aplicaciones deben llamar a este método dos veces para recuperar un mensaje: primero para obtener el tamaño del mensaje y el segundo para obtener el mensaje. Este es un ejemplo típico:

 
// Get the size of the message
SIZE_T messageLength = 0;
HRESULT hr = pInfoQueue->GetMessage(0, NULL, &messageLength);

// Allocate space and get the message
D3D12_MESSAGE * pMessage = (D3D12_MESSAGE*)malloc(messageLength);
hr = pInfoQueue->GetMessage(0, pMessage, &messageLength); 

Requisitos

   
Plataforma de destino Windows
Encabezado d3d12sdklayers.h

Consulte también

ID3D12InfoQueue