VideoPortWaitForSingleObject-Funktion (video.h)

Die VideoPortWaitForSingleObject-Funktion versetzt den aktuellen Thread in einen Wartezustand, bis das angegebene Dispatchobjekt auf den signalierten Zustand festgelegt ist, oder (optional), bis das Wartezeitfenster überschritten wird.

Syntax

VIDEOPORT_API VP_STATUS VideoPortWaitForSingleObject(
  [in] IN PVOID          HwDeviceExtension,
  [in] IN PVOID          Object,
  [in] IN PLARGE_INTEGER Timeout
);

Parameter

[in] HwDeviceExtension

Zeiger auf die Geräteerweiterung des Miniporttreibers.

[in] Object

Zeiger auf das Ereignisobjekt.

[in] Timeout

(Optional) Zeiger auf einen Timeoutwert, der die absolute oder relative Zeit angibt, zu der die Wartezeit abgeschlossen werden soll. Ein negativer Wert gibt ein Wartezeitintervall relativ zur aktuellen Zeit an. Der Wert sollte in Einheiten von 100 Nanosekunden ausgedrückt werden. Absolute Ablaufzeiten nachverfolgen alle Änderungen der Systemzeit; relative Ablaufzeiten werden von Systemzeitänderungen nicht beeinflusst.

Rückgabewert

VideoPortWaitForSingleObject gibt einen der folgenden Werte zurück:

Rückgabecode Beschreibung
ERROR_INVALID_PARAMETER Einer der Parameter ist ungültig, oder der Aufruf hat versucht, auf ein zugeordnetes Benutzerereignis zu warten.
NO_ERROR Das im pObject-Parameter angegebene Ereignisobjekt hat die Wartezeit erfüllt.
WAIT_TIMEOUT Ein Timeout ist aufgetreten, bevor das Ereignisobjekt auf den Signalzustand festgelegt wurde. Dieser Wert kann zurückgegeben werden, wenn der angegebene Satz von Wartebedingungen nicht sofort erfüllt werden kann und timeout auf 0 festgelegt ist.

Hinweise

Der Miniporttreiber sollte nicht versuchen, auf ein zugeordnetes Benutzerereignis zu warten.

Aufrufer von VideoPortWaitForSingleObject müssen unter IRQL <= DISPATCH_LEVEL ausgeführt werden. Normalerweise wird der Aufrufer unter IRQL = PASSIVE_LEVEL und in einem nichtarbiträren Threadkontext ausgeführt. Ein Aufruf dieser Funktion während der Ausführung unter IRQL = DISPATCH_LEVEL ist nur gültig, wenn der Aufrufer den Timeoutwert 0 angibt. Das heißt, ein Miniporttreiber darf nicht auf ein nonzero-Intervall bei IRQL = DISPATCH_LEVEL warten.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Verfügbar in Windows XP und höheren Versionen der Windows-Betriebssysteme.
Zielplattform Desktop
Kopfzeile video.h (einschließen von Video.h)
Bibliothek Videoprt.lib
DLL Videoprt.sys
IRQL <= DISPATCH_LEVEL (siehe Abschnitt Hinweise)