Función VideoPortWaitForSingleObject (video.h)
La función VideoPortWaitForSingleObject coloca el subproceso actual en un estado de espera hasta que el objeto de distribución especificado se establece en el estado señalado, o (opcionalmente) hasta que se agote el tiempo de espera.
Sintaxis
VIDEOPORT_API VP_STATUS VideoPortWaitForSingleObject(
[in] IN PVOID HwDeviceExtension,
[in] IN PVOID Object,
[in] IN PLARGE_INTEGER Timeout
);
Parámetros
[in] HwDeviceExtension
Puntero a la extensión del dispositivo del controlador de minipuerto.
[in] Object
Puntero al objeto de evento.
[in] Timeout
(Opcional) Puntero a un valor de tiempo de espera que especifica el tiempo absoluto o relativo en el que se va a completar la espera. Un valor negativo especifica un intervalo de espera relativo a la hora actual. El valor debe expresarse en unidades de 100 nanosegundos. Los tiempos de expiración absolutos realizan un seguimiento de los cambios en la hora del sistema; los tiempos de expiración relativos no se ven afectados por los cambios de hora del sistema.
Valor devuelto
VideoPortWaitForSingleObject devuelve uno de los siguientes valores:
Código devuelto | Descripción |
---|---|
ERROR_INVALID_PARAMETER | Uno de los parámetros no es válido o la llamada intentó esperar un evento de usuario asignado. |
NO_ERROR | El objeto de evento especificado en el parámetro pObject cumplió la espera. |
WAIT_TIMEOUT | Se agotó el tiempo de espera antes de que el objeto de evento se estableciera en el estado señalado. Este valor se puede devolver cuando no se puede cumplir inmediatamente el conjunto especificado de condiciones de espera y Timeout se establece en cero. |
Comentarios
El controlador de minipuerto no debe intentar esperar un evento de usuario asignado.
Los autores de llamadas de VideoPortWaitForSingleObject deben ejecutarse en IRQL <= DISPATCH_LEVEL. Normalmente, el autor de la llamada se ejecutará en IRQL = PASSIVE_LEVEL y en un contexto de subproceso nobitrario. Una llamada a esta función mientras se ejecuta en IRQL = DISPATCH_LEVEL es válida si y solo si el autor de la llamada especifica un valor de tiempo de espera de cero. Es decir, un controlador de minipuerto no debe esperar un intervalo distinto de cero en IRQL = DISPATCH_LEVEL.
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible | Disponible en Windows XP y versiones posteriores de los sistemas operativos Windows. |
Plataforma de destino | Escritorio |
Encabezado | video.h (incluir Video.h) |
Library | Videoprt.lib |
Archivo DLL | Videoprt.sys |
IRQL | <= DISPATCH_LEVEL (consulte la sección Comentarios) |