Freigeben über


ID3D10InfoQueue::GetMessage-Methode (d3d10sdklayers.h)

Ruft eine Nachricht aus der Nachrichtenwarteschlange ab.

Syntax

HRESULT GetMessage(
  [in]      UINT64        MessageIndex,
  [out]     D3D10_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 ID3D10InfoQueue::GetNumStoredMessagesAllowedByRetrievalFilter abgerufen werden kann). 0 ist die Nachricht am Anfang der Nachrichtenwarteschlange.

[out] pMessage

Typ: D3D10_MESSAGE*

Zurückgegebene Nachricht (siehe D3D10_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 10-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
D3D10_MESSAGE * pMessage = (D3D10_MESSAGE*)malloc(messageLength);
hr = pInfoQueue->GetMessage(0, pMessage, &messageLength);

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

Anforderungen

Anforderung Wert
Zielplattform Windows
Kopfzeile d3d10sdklayers.h

Weitere Informationen

ID3D10InfoQueue-Schnittstelle