Partager via


ID3D10InfoQueue ::GetMessage, méthode (d3d10sdklayers.h)

Obtenez un message à partir de la file d’attente de messages.

Syntaxe

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

Paramètres

[in] MessageIndex

Type : UINT64

Index dans la file d’attente des messages après l’application d’un filtre de récupération facultatif. Cela peut être compris entre 0 et le nombre de messages dans la file d’attente des messages qui passent par le filtre de récupération (qui peut être obtenu avec ID3D10InfoQueue ::GetNumStoredMessagesAllowedByRetrievalFilter). 0 est le message à l’avant de la file d’attente des messages.

[out] pMessage

Type : D3D10_MESSAGE*

Message retourné (voir D3D10_MESSAGE).

[in, out] pMessageByteLength

Type : SIZE_T*

Taille de pMessage en octets, y compris la taille de la chaîne de message vers laquelle le pMessage pointe.

Valeur retournée

Type : HRESULT

Cette méthode retourne l’un des codes de retour Direct3D 10 suivants.

Remarques

Cette méthode ne supprime aucun message de la file d’attente des messages.

Cette méthode obtient les messages de la file d’attente des messages après l’application d’un filtre de récupération facultatif.

Les applications doivent appeler cette méthode deux fois pour récupérer un message : d’abord pour obtenir la taille du message et ensuite pour obtenir le message. Voici un exemple classique :


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

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

Pour obtenir une vue d’ensemble, consultez Vue d’ensemble de la file d’attente d’informations.

Configuration requise

Condition requise Valeur
Plateforme cible Windows
En-tête d3d10sdklayers.h

Voir aussi

ID3D10InfoQueue Interface