AcxCircuitInitAssignAcxRequestPreprocessCallback, fonction (acxcircuit.h)
La fonction AcxCircuitInitAssignAcxRequestPreprocessCallback ajoute un rappel de préprocesseur WDFREQUEST.
Syntaxe
NTSTATUS AcxCircuitInitAssignAcxRequestPreprocessCallback(
PACXCIRCUIT_INIT CircuitInit,
PFN_ACX_OBJECT_PREPROCESS_REQUEST EvtObjectAcxRequestPreprocess,
ACXCONTEXT DriverContext,
ACX_REQUEST_TYPE RequestType,
const GUID *Set,
ULONG Id
);
Paramètres
CircuitInit
Structure ACXCIRCUIT_INIT qui définit l’initialisation du circuit. ACXCIRCUIT_INIT est un objet opaque utilisé pour l’initialisation du circuit. Utilisez AcxCircuitInitAllocate pour initialiser la structure ACXCIRCUIT_INIT.
EvtObjectAcxRequestPreprocess
Pointeur vers un rappel EVT_ACX_OBJECT_PREPROCESS_REQUEST .
DriverContext
Contexte de pilote défini par l’objet ACXCONTEXT. Pour plus d’informations sur les objets ACX, consultez Résumé des objets ACX.
RequestType
Un ACX_REQUEST_TYPE énumération qui définit différents types de requêtes, tels que AcxRequestTypeAny, AcxRequestTypeProperty, etc.
Set
GUID facultatif pour identifier un ID d’ensemble d’éléments spécifique.
Id
ID permettant de mettre en retrait un élément spécifique dans l’ID défini spécifié.
Valeur retournée
Retourne STATUS_SUCCESS
si l’appel a réussi. Sinon, il retourne un code d’erreur approprié. Pour plus d’informations, consultez Utilisation de valeurs NTSTATUS.
Remarques
Le pilote peut appeler cette DDI plusieurs fois pour configurer différents rappels de prétraitement. ACX appelle le premier qu’il trouve qui correspond au type WDFREQUEST entrant spécifique.
Exemple
L’exemple d’utilisation est illustré ci-dessous.
// Render callbacks.
EVT_ACX_OBJECT_PREPROCESS_REQUEST CodecR_EvtCircuitRequestPreprocess;
//
// Add circuit type.
//
AcxCircuitInitSetCircuitType(circuitInit, AcxCircuitTypeRender);
//
// Assign the circuit's pnp-power callbacks.
//
ACX_CIRCUIT_PNPPOWER_CALLBACKS_INIT(&powerCallbacks);
powerCallbacks.EvtAcxCircuitPowerUp = CodecR_EvtCircuitPowerUp;
powerCallbacks.EvtAcxCircuitPowerDown = CodecR_EvtCircuitPowerDown;
AcxCircuitInitSetAcxCircuitPnpPowerCallbacks(circuitInit, &powerCallbacks);
//
// Set circuit-callbacks.
//
status = AcxCircuitInitAssignAcxRequestPreprocessCallback(
circuitInit,
CodecR_EvtCircuitRequestPreprocess,
(ACXCONTEXT)AcxRequestTypeAny, // dbg only
AcxRequestTypeAny,
NULL,
AcxItemIdNone);
Configuration requise d’ACX
Version minimale d’ACX : 1.0
Pour plus d’informations sur les versions d’ACX, consultez Vue d’ensemble des versions d’ACX.
Configuration requise
Condition requise | Valeur |
---|---|
En-tête | acxcircuit.h |
IRQL | PASSIVE_LEVEL |