Freigeben über


ID3D11InfoQueue::GetMessage-Methode (d3d11sdklayers.h)

Ruft eine Nachricht aus der Nachrichtenwarteschlange ab.

Syntax

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

Parameter

[in] MessageIndex

Typ: UINT64

Indizieren sie in die Nachrichtenwarteschlange, nachdem ein optionaler Abruffilter angewendet wurde. Dies kann zwischen 0 und der Anzahl der Nachrichten in der Nachrichtenwarteschlange sein, die den Abruffilter durchlaufen (der mit ID3D11InfoQueue::GetNumStoredMessagesAllowedByRetrievalFilter abgerufen werden kann). 0 ist die Nachricht am Anfang der Nachrichtenwarteschlange.

[out, optional] pMessage

Typ: D3D11_MESSAGE*

Zurückgegebene Nachricht (siehe D3D11_MESSAGE).

[in, out] pMessageByteLength

Typ: SIZE_T*

Größe von pMessage in Bytes, einschließlich der Größe der Nachrichtenzeichenfolge, auf die die pMessage zeigt.

Rückgabewert

Typ: HRESULT

Diese Methode gibt einen der folgenden Direct3D 11-Rückgabecodes zurück.

Hinweise

Diese Methode entfernt keine Nachrichten aus der Nachrichtenwarteschlange.

Diese Methode ruft Nachrichten aus der Nachrichtenwarteschlange ab, nachdem ein optionaler Abruffilter angewendet wurde.

Anwendungen sollten diese Methode zweimal aufrufen, um eine Nachricht abzurufen– zunächst, um die Größe der Nachricht zu erhalten, und zweitens, um die Nachricht abzurufen. Hier ist ein typisches Beispiel:


// 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);

Eine Übersicht finden Sie unter Übersicht über Informationswarteschlangen.

Anforderungen

Anforderung Wert
Zielplattform Windows
Kopfzeile d3d11sdklayers.h
Bibliothek D3D11.lib

Weitere Informationen

ID3D11InfoQueue-Schnittstelle