IDXGIInfoQueue::Metode GetMessage (dxgidebug.h)
Mendapatkan pesan dari antrean pesan.
Sintaks
HRESULT GetMessage(
[in] DXGI_DEBUG_ID Producer,
[in] UINT64 MessageIndex,
[out, optional] DXGI_INFO_QUEUE_MESSAGE *pMessage,
[in, out] SIZE_T *pMessageByteLength
);
Parameter
[in] Producer
Nilai DXGI_DEBUG_ID yang mengidentifikasi entitas yang mendapatkan pesan.
[in] MessageIndex
Indeks ke dalam antrean pesan setelah filter pengambilan opsional diterapkan. Ini bisa antara 0 dan jumlah pesan dalam antrean pesan yang melewati filter pengambilan. Panggil IDXGIInfoQueue::GetNumStoredMessagesAllowedByRetrievalFilters untuk mendapatkan nomor ini. 0 adalah pesan di awal antrean pesan.
[out, optional] pMessage
Penunjuk ke struktur DXGI_INFO_QUEUE_MESSAGE yang menjelaskan pesan.
[in, out] pMessageByteLength
Penunjuk ke variabel yang menerima ukuran, dalam byte, dari deskripsi pesan yang dirujuk pMessage . Ukuran ini mencakup ukuran struktur DXGI_INFO_QUEUE_MESSAGE dalam byte.
Nilai kembali
Mengembalikan S_OK jika berhasil; kode kesalahan sebaliknya. Untuk daftar kode kesalahan, lihat DXGI_ERROR.
Keterangan
Metode ini tidak menghapus pesan apa pun dari antrean pesan.
Metode ini mendapatkan pesan dari antrean pesan setelah filter pengambilan opsional diterapkan.
Panggil metode ini dua kali untuk mengambil pesan, pertama untuk mendapatkan ukuran pesan dan kedua untuk mendapatkan pesan. Berikut adalah contoh umumnya:
// Get the size of the message.
SIZE_T messageLength = 0;
HRESULT hr = pInfoQueue->GetMessage(DXGI_DEBUG_ALL, 0, NULL, &messageLength);
if(hr == S_FALSE){
// Allocate space and get the message.
DXGI_INFO_QUEUE_MESSAGE * pMessage = (DXGI_INFO_QUEUE_MESSAGE*)malloc(messageLength);
hr = pInfoQueue->GetMessage(DXGI_DEBUG_ALL, 0, pMessage, &messageLength);
// Do something with the message and free it
if(hr == S_OK){
// ...
// ...
// ...
free(pMessage);
}
}
Persyaratan
Persyaratan | Nilai |
---|---|
Klien minimum yang didukung | Windows 8 [aplikasi desktop | Aplikasi UWP] |
Server minimum yang didukung | Windows Server 2012 [aplikasi desktop | Aplikasi UWP] |
Target Platform | Windows |
Header | dxgidebug.h |
DLL | DXGIDebug.dll |