Compartilhar via


Método ID3D11InfoQueue::GetMessage (d3d11sdklayers.h)

Obtenha uma mensagem da fila de mensagens.

Sintaxe

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

Parâmetros

[in] MessageIndex

Tipo: UINT64

Indexe na fila de mensagens depois que um filtro de recuperação opcional tiver sido aplicado. Isso pode estar entre 0 e o número de mensagens na fila de mensagens que passam pelo filtro de recuperação (que pode ser obtido com ID3D11InfoQueue::GetNumStoredMessagesAllowedByRetrievalFilter). 0 é a mensagem na frente da fila de mensagens.

[out, optional] pMessage

Tipo: D3D11_MESSAGE*

Mensagem retornada (consulte D3D11_MESSAGE).

[in, out] pMessageByteLength

Tipo: SIZE_T*

Tamanho de pMessage em bytes, incluindo o tamanho da cadeia de caracteres de mensagem para a qual o pMessage aponta.

Retornar valor

Tipo: HRESULT

Esse método retorna um dos seguintes códigos de retorno do Direct3D 11.

Comentários

Esse método não remove nenhuma mensagem da fila de mensagens.

Esse método obtém mensagens da fila de mensagens depois que um filtro de recuperação opcional é aplicado.

Os aplicativos devem chamar esse método duas vezes para recuperar uma mensagem – primeiro para obter o tamanho da mensagem e o segundo para obter a mensagem. Aqui está um exemplo 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
D3D11_MESSAGE * pMessage = (D3D11_MESSAGE*)malloc(messageLength);
hr = pInfoQueue->GetMessage(0, pMessage, &messageLength);

Para obter uma visão geral, consulte Visão geral da fila de informações.

Requisitos

Requisito Valor
Plataforma de Destino Windows
Cabeçalho d3d11sdklayers.h
Biblioteca D3D11.lib

Confira também

ID3D11InfoQueue Interface