Condividi tramite


Metodo IDirect3DDevice9::TestCooperativeLevel (d3d9helper.h)

Segnala lo stato corrente a livello di cooperativa del dispositivo Direct3D per un'applicazione con finestra o a schermo intero.

Sintassi

HRESULT TestCooperativeLevel();

Valore restituito

Tipo: HRESULT

Se il metodo ha esito positivo, il valore restituito è D3D_OK, indicando che il dispositivo è operativo e l'applicazione chiamante può continuare. Se il metodo ha esito negativo, il valore restituito può essere uno dei valori seguenti: D3DERR_DEVICELOST, D3DERR_DEVICENOTRESET, D3DERR_DRIVERINTERNALERROR.

Commenti

Se il dispositivo viene perso ma non può essere ripristinato al momento corrente, IDirect3DDevice9::TestCooperativeLevel restituisce il codice restituito D3DERR_DEVICELOST. Questo è il caso, ad esempio, quando un dispositivo a schermo intero ha perso lo stato attivo. Se un'applicazione rileva un dispositivo perso, deve sospendere e chiamare periodicamente IDirect3DDevice9::TestCooperativeLevel finché non riceve un valore restituito di D3DERR_DEVICENOTRESET. L'applicazione può quindi tentare di reimpostare il dispositivo chiamando IDirect3DDevice9::Reset e, se questa operazione riesce, ripristinare le risorse necessarie e riprendere la normale operazione. Si noti che IDirect3DDevice9::P resent restituirà D3DERR_DEVICELOST se il dispositivo è "perso" o "non reimposta".

Una chiamata a IDirect3DDevice9::TestCooperativeLevel avrà esito negativo se viene chiamato in un thread diverso da quello usato per creare il dispositivo da reimpostare.

Requisiti

Requisito Valore
Piattaforma di destinazione Windows
Intestazione d3d9helper.h (include D3D9.h)
Libreria D3D9.lib

Vedi anche

IDirect3DDevice9