Compartir a través de


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)