Funzione AcxCircuitInitAssignAcxRequestPreprocessCallback (acxcircuit.h)
La funzione AcxCircuitInitAssignAcxRequestPreprocessCallback aggiunge un callback di preprocesso WDFREQUEST.
Sintassi
NTSTATUS AcxCircuitInitAssignAcxRequestPreprocessCallback(
PACXCIRCUIT_INIT CircuitInit,
PFN_ACX_OBJECT_PREPROCESS_REQUEST EvtObjectAcxRequestPreprocess,
ACXCONTEXT DriverContext,
ACX_REQUEST_TYPE RequestType,
const GUID *Set,
ULONG Id
);
Parametri
CircuitInit
Struttura ACXCIRCUIT_INIT che definisce l'inizializzazione del circuito. ACXCIRCUIT_INIT è un oggetto opaco usato per l'inizializzazione del circuito. Usare AcxCircuitInitAllocate per inizializzare la struttura di ACXCIRCUIT_INIT.
EvtObjectAcxRequestPreprocess
Puntatore a un callback EVT_ACX_OBJECT_PREPROCESS_REQUEST .
DriverContext
Contesto del driver definito dall'oggetto ACXCONTEXT. Per altre informazioni sugli oggetti ACX, vedere Riepilogo degli oggetti ACX.
RequestType
Enumerazione ACX_REQUEST_TYPE che definisce diversi tipi di richiesta, ad esempio AcxRequestTypeAny, AcxRequestTypeProperty e così via.
Set
GUID facoltativo per identificare un ID set di elementi specifico.
Id
ID per rientro di un elemento specifico nell'ID set specificato.
Valore restituito
Restituisce STATUS_SUCCESS
se la chiamata ha avuto esito positivo. In caso contrario, restituisce un codice di errore appropriato. Per altre informazioni, vedere Uso dei valori NTSTATUS.
Commenti
Il driver può richiamare più volte questo DDI per configurare callback di pre-elaborazione diversi. ACX richiama il primo elemento che corrisponde al tipo WDFREQUEST in ingresso specifico.
Esempio
Di seguito è riportato l'esempio di utilizzo.
// 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);
Requisiti ACX
Versione minima DI ACX: 1.0
Per altre informazioni sulle versioni ACX, vedere Panoramica della versione di ACX.
Requisiti
Requisito | Valore |
---|---|
Intestazione | acxcircuit.h |
IRQL | PASSIVE_LEVEL |