Share via


DXGI_OUTDUPL_FRAME_INFO-Struktur (dxgi1_2.h)

Die DXGI_OUTDUPL_FRAME_INFO-Struktur beschreibt das aktuelle Desktopimage.

Syntax

typedef struct DXGI_OUTDUPL_FRAME_INFO {
  LARGE_INTEGER                 LastPresentTime;
  LARGE_INTEGER                 LastMouseUpdateTime;
  UINT                          AccumulatedFrames;
  BOOL                          RectsCoalesced;
  BOOL                          ProtectedContentMaskedOut;
  DXGI_OUTDUPL_POINTER_POSITION PointerPosition;
  UINT                          TotalMetadataBufferSize;
  UINT                          PointerShapeBufferSize;
} DXGI_OUTDUPL_FRAME_INFO;

Member

LastPresentTime

Der Zeitstempel der letzten Aktualisierung des Desktopimages. Das Betriebssystem ruft die QueryPerformanceCounter-Funktion auf, um den Wert abzurufen. Ein Nullwert gibt an, dass das Desktopimage nicht aktualisiert wurde, da eine Anwendung zuletzt die IDXGIOutputDuplication::AcquireNextFrame-Methode aufgerufen hat, um den nächsten Frame des Desktopimages zu erhalten.

LastMouseUpdateTime

Der Zeitstempel der letzten Mausaktualisierung. Das Betriebssystem ruft die QueryPerformanceCounter-Funktion auf, um den Wert abzurufen. Ein Nullwert gibt an, dass die Position oder Form der Maus nicht aktualisiert wurde, da eine Anwendung zuletzt die IDXGIOutputDuplication::AcquireNextFrame-Methode aufgerufen hat, um den nächsten Frame des Desktopimages zu erhalten. Die Mausposition wird immer für ein Mausupdate bereitgestellt. Eine neue Zeigerform wird durch einen Wert ungleich 0 im PointerShapeBufferSize-Element angezeigt.

AccumulatedFrames

Die Anzahl der Frames, die das Betriebssystem auf der Desktopimageoberfläche angesammelt hat, seit die aufrufende Anwendung das letzte Desktopimage verarbeitet hat. Weitere Informationen zu dieser Nummer finden Sie unter Hinweise.

RectsCoalesced

Gibt an, ob das Betriebssystem Updates durch Zusammenfügen von modifiziert Regionen akkumuliert hat. Daher können die modifiziert Regionen nicht geänderte Pixel enthalten. TRUE, wenn modifiziert Regionen akkumuliert wurden, andernfalls FALSE.

ProtectedContentMaskedOut

Gibt an, ob das Desktopimage geschützte Inhalte enthalten kann, die bereits im Desktopimage geschwärzte wurden. TRUE , wenn geschützte Inhalte bereits geschwärzt wurden; andernfalls FALSE. Die Anwendung kann diese Informationen verwenden, um den Remotebenutzer darüber zu informieren, dass einige der Desktopinhalte möglicherweise geschützt und daher nicht sichtbar sind.

PointerPosition

Eine DXGI_OUTDUPL_POINTER_POSITION-Struktur , die die letzte Mausposition beschreibt, wenn das LastMouseUpdateTime-Element ein Wert ungleich 0 ist; Andernfalls wird dieser Wert ignoriert. Dieser Wert stellt die Koordinaten der Position bereit, an der die obere linke Ecke der Zeigerform gezeichnet wird. Dieser Wert ist nicht die Desktopposition des Hotspots.

TotalMetadataBufferSize

Größe in Bytes der Puffer, um alle Desktopupdatemetadaten für diesen Frame zu speichern. Weitere Informationen zu dieser Größe finden Sie unter Hinweise.

PointerShapeBufferSize

Größe in Bytes des Puffers, um die neuen Pixeldaten für das Maus-Shape aufzunehmen. Weitere Informationen zu dieser Größe finden Sie unter Hinweise.

Hinweise

Ein LastMouseUpdateTime-Wert ungleich null gibt eine Aktualisierung auf eine Mauszeigerposition oder eine Mauszeigerposition und -form an. Das heißt, die Mauszeigerposition ist immer gültig für eine LastMouseUpdateTime ungleich 0; Die Anwendung muss jedoch den Wert des PointerShapeBufferSize-Members überprüfen, um zu ermitteln, ob auch das Shape aktualisiert wurde.

Wenn nur der Zeiger aktualisiert wurde (d. h. das Desktopimage wurde nicht aktualisiert), werden die Elemente AccumulatedFrames, TotalMetadataBufferSize und LastPresentTime auf 0 festgelegt.

Der Wert "AccumulatedFrames " von 1 gibt an, dass die Anwendung die Verarbeitung des letzten Frames abgeschlossen hat, bevor ein neues Desktopimage angezeigt wurde. Wenn der Wert "AccumulatedFrames" größer als eins ist, sind mehrere Desktopimageupdates aufgetreten, während die Anwendung das letzte Desktopupdate verarbeitet hat. In dieser Situation hat das Betriebssystem die Updateregionen kumuliert. Weitere Informationen zu Desktopupdates finden Sie unter Desktopupdatedaten.

TotalMetadataBufferSize ohne Null gibt die Gesamtgröße der Puffer an, die zum Speichern aller Desktopupdatemetadaten erforderlich sind. Eine Anwendung kann die Größe jedes Metadatentyps nicht bestimmen. Die Anwendung muss die IDXGIOutputDuplication::GetFrameDirtyRects, IDXGIOutputDuplication::GetFrameMoveRects oder IDXGIOutputDuplication::GetFramePointerShape-Methode aufrufen, um Informationen zu den einzelnen Metadatentypen abzurufen.

Hinweis Um visuelle Effekte zu korrigieren, muss eine Anwendung die Daten zum Verschieben des Bereichs verarbeiten, bevor sie die modifiziert Rechtecke verarbeitet.
 

Anforderungen

   
Unterstützte Mindestversion (Client) Windows 8 und Platform Update für Windows 7 [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows Server 2012 und Plattformupdate für Windows Server 2008 R2 [nur Desktop-Apps]
Kopfzeile dxgi1_2.h

Weitere Informationen

DXGI-Strukturen

IDXGIOutputDuplication::AcquireNextFrame