Bagikan melalui


ID3D11Device4::RegisterDeviceRemovedEvent metode (d3d11_4.h)

Mendaftarkan peristiwa "perangkat dihapus" dan menunjukkan kapan perangkat Direct3D telah dihapus karena alasan apa pun, menggunakan mekanisme pemberitahuan asinkron.

Sintaks

HRESULT RegisterDeviceRemovedEvent(
  [in]  HANDLE hEvent,
  [out] DWORD  *pdwCookie
);

Parameter

[in] hEvent

Jenis: HANDEL

Handel ke peristiwa "perangkat dihapus".

[out] pdwCookie

Jenis: DWORD*

Penunjuk ke informasi tentang peristiwa "perangkat dihapus", yang dapat digunakan di UnregisterDeviceRemoved untuk membatalkan pendaftaran peristiwa.

Mengembalikan nilai

Jenis: HRESULT

Lihat Kode Pengembalian Direct3D 11.

Keterangan

Menunjukkan kapan perangkat Direct3D telah dihapus karena alasan apa pun, menggunakan mekanisme pemberitahuan asinkron, bukan sebagai HRESULT dari Sekarang. Alasan penghapusan perangkat dapat diambil menggunakan ID3D11Device::GetDeviceRemovedReason setelah diberi tahu tentang kejadian tersebut.

Aplikasi mendaftar dan membatalkan pendaftaran handel peristiwa Win32 dengan perangkat tertentu. Handel peristiwa tersebut akan disinyalir ketika perangkat dihapus. Polling ke dalam metode ID3D11Device::GetDeviceRemovedReason perangkat menunjukkan bahwa perangkat dihapus.

ISignalableNotifier atau SetThreadpoolWait dapat digunakan oleh aplikasi UWP.

Ketika perangkat grafis hilang, aplikasi atau judul akan menerima peristiwa grafis, sehingga aplikasi atau judul tahu bahwa perangkat grafisnya tidak lagi valid dan aman bagi aplikasi atau judul untuk membuat ulang perangkat DirectX-nya. Menanggapi peristiwa ini, aplikasi atau judul perlu membuat ulang perangkat penyajiannya dan meneruskannya ke panggilan SetRenderingDevice pada objek perangkat grafis komposisi.

Setelah mengatur perangkat penyajian baru ini, aplikasi atau judul perlu menggambar ulang konten semua permukaan yang sudah ada sebelumnya setelah peristiwa OnRenderingDeviceReplaced perangkat grafis komposisi diaktifkan.

Metode ini mendukung Komposisi untuk kehilangan perangkat.

Peristiwa ini tidak disinyalir ketika paling ideal untuk dibuat ulang. Jadi, sebagai gantinya, kami sarankan iterasi melalui ordinal adaptor dan membuat ordinal pertama yang akan berhasil.

Aplikasi dapat mendaftarkan peristiwa dengan perangkat. Aplikasi akan diberi sinyal ketika perangkat dihapus.

Jika perangkat sudah dihapus, panggilan ke RegisterDeviceRemovedEvent akan segera memberi sinyal peristiwa. Tidak ada kode kesalahan yang dihapus perangkat yang akan dikembalikan dari RegisterDeviceRemovedEvent.

Setiap peristiwa "perangkat dihapus" tidak pernah disinyalkan, atau hanya disinyalir sekali. Peristiwa ini tidak disinyalir selama penghancuran perangkat. Peristiwa ini tidak terdaftar selama kehancuran.

Semantik RegisterDeviceRemovedEvent mirip dengan IDXGIFactory2::RegisterOcclusionStatusEvent.

Persyaratan

Persyaratan Nilai
Target Platform Windows
Header d3d11_4.h
Pustaka D3d11.lib

Lihat juga

ID3D11Device4

UnregisterDeviceRemoved