Función WmiCompleteRequest (wmilib.h)
La rutina WmiCompleteRequest indica que un controlador ha terminado de procesar una solicitud WMI en una rutina de DpWmiXxx.
Sintaxis
NTSTATUS WmiCompleteRequest(
[in] PDEVICE_OBJECT DeviceObject,
[in, out] PIRP Irp,
[in] NTSTATUS Status,
[in] ULONG BufferUsed,
[in] CCHAR PriorityBoost
);
Parámetros
[in] DeviceObject
Puntero al DEVICE_OBJECTdel controlador.
[in, out] Irp
Puntero al IRP.
[in] Status
Especifica el estado que se va a devolver para irP.
[in] BufferUsed
Especifica el número de bytes necesarios en el búfer pasado a la rutina de dpWmiXxx del controlador. Si el búfer es demasiado pequeño, el controlador establece estado en STATUS_BUFFER_TOO_SMALL y establece BufferUsed al número de bytes necesarios para que se devuelvan los datos. Si el búfer pasado es lo suficientemente grande, el controlador establece BufferUsed al número de bytes que se usan realmente.
[in] PriorityBoost
Especifica una constante definida por el sistema por la que se incrementa la prioridad en tiempo de ejecución del subproceso original que solicitó la operación. WMI llama a IoCompleteRequest con PriorityBoost cuando completa el IRP. Consulte IoCompleteRequest para obtener más información sobre PriorityBoost.
Valor devuelto
WmiCompleteRequest devuelve el valor que se le pasó en el parámetro status , a menos que estado se estableció en STATUS_BUFFER_TOO_SMALL. Si el controlador establece Estado igual a STATUS_BUFFER_TOO_SMALL, WmiCompleteRequest compila una estructura de WNODE_TOO_SMALL y devuelve STATUS_SUCCESS. El controlador debe devolver el valor devuelto de WmiCompleteRequest en su rutina de DpWmiXxx.
Observaciones
Un controlador llama a WmiCompleteRequest desde una rutina de DpWmiXxx después de que finalice todo el procesamiento de esa rutina, o después de que el controlador finalice todo el procesamiento de un IRP pendiente. WmiCompleteRequest rellena una WNODE_XXX con los datos devueltos por el controlador y llama ioCompleteRequest para completar el IRP.
Un controlador siempre debe devolver el valor devuelto de WmiCompleteRequest en su rutina de DpWmiXxx.
Un controlador no debe llamar a WmiCompleteRequest desde su rutina de dpWmiQueryRegInfo.
Requisitos
Requisito | Valor |
---|---|
cliente mínimo admitido | Disponible a partir de Windows 2000. |
de la plataforma de destino de | Universal |
encabezado de | wmilib.h (include Wmilib.h) |
biblioteca de | Wmilib.lib |
irQL | <= DISPATCH_LEVEL |