Метод ID3D11InfoQueue::GetMessage (d3d11sdklayers.h)
Получение сообщения из очереди сообщений.
Синтаксис
HRESULT GetMessage(
[in] UINT64 MessageIndex,
[out, optional] D3D11_MESSAGE *pMessage,
[in, out] SIZE_T *pMessageByteLength
);
Параметры
[in] MessageIndex
Тип: UINT64
Индекс в очередь сообщений после применения необязательного фильтра извлечения. Это может быть от 0 до количества сообщений в очереди сообщений, проходящих через фильтр получения (который можно получить с помощью ID3D11InfoQueue::GetNumStoredMessagesAllowedByRetrievalFilter). 0 — это сообщение в передней части очереди сообщений.
[out, optional] pMessage
Тип: D3D11_MESSAGE*
Возвращенное сообщение (см . D3D11_MESSAGE).
[in, out] pMessageByteLength
Тип: SIZE_T*
Размер pMessage в байтах, включая размер строки сообщения, на которую указывает pMessage.
Возвращаемое значение
Тип: HRESULT
Этот метод возвращает один из следующих кодов возврата Direct3D 11.
Комментарии
Этот метод не удаляет сообщения из очереди сообщений.
Этот метод получает сообщения из очереди сообщений после применения необязательного фильтра извлечения.
Приложения должны вызывать этот метод дважды, чтобы получить сообщение: сначала для получения размера сообщения, а затем для получения сообщения. Ниже приведен типичный пример:
// 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);
Общие сведения см. в разделе Information Queue Overview.
Требования
Требование | Значение |
---|---|
Целевая платформа | Windows |
Header | d3d11sdklayers.h |
Библиотека | D3D11.lib |