Condividi tramite


Metodo IDXGIOutputDuplica::MapDesktopSurface (dxgi1_2.h)

Fornisce alla CPU l'accesso efficiente a un'immagine desktop se l'immagine desktop è già in memoria di sistema.

Sintassi

HRESULT MapDesktopSurface(
  [out] DXGI_MAPPED_RECT *pLockedRect
);

Parametri

[out] pLockedRect

Puntatore a una struttura DXGI_MAPPED_RECT che riceve i dati di superficie che la CPU deve accedere direttamente ai dati di superficie.

Valore restituito

MapDesktopSurface restituisce:

  • S_OK se ha recuperato correttamente i dati di superficie.
  • DXGI_ERROR_ACCESS_LOST se l'interfaccia di duplicazione desktop non è valida. L'interfaccia di duplicazione desktop diventa in genere non valida quando viene visualizzato un tipo diverso di immagine sul desktop. Esempi di questa situazione sono:
    • Commutatore desktop
    • Modifica della modalità
    • Passare da DWM su, DWM disattivato o da un'altra applicazione a schermo intero
    In questo caso, l'applicazione deve rilasciare l'interfaccia IDXGIOutputDuplicazione e creare un nuovo IDXGIOutputDuplicazione per il nuovo contenuto.
  • DXGI_ERROR_INVALID_CALL se l'applicazione ha già una mappa in sospeso nell'immagine desktop. L'applicazione deve chiamare di nuovo UnMapDesktopSurface prima di chiamare MapDesktopSurface . DXGI_ERROR_INVALID_CALL viene restituito anche se l'applicazione non possiede l'immagine desktop quando viene chiamata MapDesktopSurface.
  • DXGI_ERROR_UNSUPPORTED se l'immagine desktop non è in memoria di sistema. In questa situazione, l'applicazione deve prima trasferire l'immagine in un'area di gestione temporanea e quindi bloccare l'immagine chiamando il metodo IDXGISurface::Map .
  • E_INVALIDARG se il parametro pLockedRect non è corretto; ad esempio, se pLockedRect è NULL.
  • Eventualmente altri codici di errore descritti nell'argomento DXGI_ERROR .

Commenti

È possibile chiamare MapDesktopSurface se il membro DesktopImageInSystemMemory della struttura DXGI_OUTDUPL_DESC è impostato su TRUE. Se DesktopImageInSystemMemory è FALSE, MapDesktopSurface restituisce DXGI_ERROR_UNSUPPORTED. Chiamare IDXGIOutputDuplica::GetDesc per recuperare la struttura DXGI_OUTDUPL_DESC .

Requisiti

Requisito Valore
Client minimo supportato Windows 8 [solo app desktop]
Server minimo supportato Windows Server 2012 [solo app desktop]
Piattaforma di destinazione Windows
Intestazione dxgi1_2.h
Libreria Dxgi.lib

Vedi anche

IDXGIOutputDuplicazione