ID3D10InfoQueue::GetMessage 方法 (d3d10sdklayers.h)
從消息佇列取得訊息。
語法
HRESULT GetMessage(
[in] UINT64 MessageIndex,
[out] D3D10_MESSAGE *pMessage,
[in, out] SIZE_T *pMessageByteLength
);
參數
[in] MessageIndex
類型: UINT64
套用選擇性擷取篩選條件之後,將索引編製至消息佇列。 這可以是介於 0 到訊息佇列中通過擷取篩選條件的訊息數目, (可使用 ID3D10InfoQueue::GetNumStoredMessagesAllowedByRetrievalFilter) 取得。 0 是消息佇列前端的訊息。
[out] pMessage
類型: D3D10_MESSAGE*
傳回的訊息 (請參閱 D3D10_MESSAGE) 。
[in, out] pMessageByteLength
類型: SIZE_T*
以位元組為單位的 pMessage 大小,包括 pMessage 所指向之訊息字串的大小。
傳回值
類型: HRESULT
此方法會傳回下列其中一個 Direct3D 10 傳回碼。
備註
這個方法不會從消息佇列中移除任何訊息。
此方法會在套用選擇性擷取篩選條件之後,從消息佇列取得訊息。
應用程式應該呼叫這個方法兩次來擷取訊息 - 首先取得訊息的大小,第二個取得訊息。 以下是典型的範例:
// 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);
如需概觀,請參閱 資訊佇列概觀。
規格需求
需求 | 值 |
---|---|
目標平台 | Windows |
標頭 | d3d10sdklayers.h |