VideoPortWaitForSingleObject-Funktion (video.h)
Die VideoPortWaitForSingleObject--Funktion versetzt den aktuellen Thread in einen Wartezustand, bis das angegebene Verteilerobjekt auf den signalierten Zustand festgelegt ist, oder (optional), bis die Wartezeit überschritten wird.
Syntax
VIDEOPORT_API VP_STATUS VideoPortWaitForSingleObject(
[in] IN PVOID HwDeviceExtension,
[in] IN PVOID Object,
[in] IN PLARGE_INTEGER Timeout
);
Parameter
[in] HwDeviceExtension
Zeigen Sie auf die Geräteerweiterung des Miniporttreibers.
[in] Object
Zeiger auf das Ereignisobjekt.
[in] Timeout
(Optional) Zeigen Sie auf einen Timeoutwert, der die absolute oder relative Uhrzeit angibt, zu der die Wartezeit abgeschlossen werden soll. Ein negativer Wert gibt ein Wartezeitintervall relativ zur aktuellen Uhrzeit an. Der Wert sollte in Einheiten von 100 Nanosekunden ausgedrückt werden. Absolute Ablaufzeiten verfolgen alle Änderungen der Systemzeit; Relative Ablaufzeiten sind von Systemzeitänderungen nicht betroffen.
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 erfüllt die Wartezeit. |
WAIT_TIMEOUT | Ein Timeout ist aufgetreten, bevor das Ereignisobjekt auf den signalgesteuerten Zustand festgelegt wurde. Dieser Wert kann zurückgegeben werden, wenn der angegebene Satz von Wartebedingungen nicht sofort erfüllt werden kann und Timeout auf Null festgelegt ist. |
Bemerkungen
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 bei IRQL = PASSIVE_LEVEL und in einem nichtarbiträren Threadkontext ausgeführt. Ein Aufruf dieser Funktion während der Ausführung bei IRQL = DISPATCH_LEVEL ist gültig, wenn und nur, wenn der Aufrufer einen Timeout Wert null angibt. Das heißt, ein Miniporttreiber darf nicht auf ein Nonzero-Intervall bei IRQL = DISPATCH_LEVEL warten.
Anforderungen
Anforderung | Wert |
---|---|
mindestens unterstützte Client- | Verfügbar in Windows XP und höheren Versionen von Windows-Betriebssystemen. |
Zielplattform- | Desktop |
Header- | video.h (video.h einschließen) |
Library | Videoprt.lib |
DLL- | Videoprt.sys |
IRQL- | <= DISPATCH_LEVEL (siehe Abschnitt "Hinweise") |