AcxCircuitInitAssignAcxRequestPreprocessCallback-Funktion (acxcircuit.h)
Die AcxCircuitInitAssignAcxRequestPreprocessCallback-Funktion fügt einen WDFREQUEST-Präprozessrückruf hinzu.
Syntax
NTSTATUS AcxCircuitInitAssignAcxRequestPreprocessCallback(
PACXCIRCUIT_INIT CircuitInit,
PFN_ACX_OBJECT_PREPROCESS_REQUEST EvtObjectAcxRequestPreprocess,
ACXCONTEXT DriverContext,
ACX_REQUEST_TYPE RequestType,
const GUID *Set,
ULONG Id
);
Parameter
CircuitInit
Die ACXCIRCUIT_INIT Struktur, die die Verbindungsinitialisierung definiert. ACXCIRCUIT_INIT ist ein undurchsichtiges Objekt, das für die Verbindungsinitialisierung verwendet wird. Verwenden Sie AcxCircuitInitAllocate , um die ACXCIRCUIT_INIT-Struktur zu initialisieren.
EvtObjectAcxRequestPreprocess
Ein Zeiger auf einen EVT_ACX_OBJECT_PREPROCESS_REQUEST Rückruf.
DriverContext
Der durch das ACXCONTEXT-Objekt definierte Treiberkontext. Weitere Informationen zu ACX-Objekten finden Sie unter Zusammenfassung von ACX-Objekten.
RequestType
Eine ACX_REQUEST_TYPE Enumeration , die verschiedene Anforderungstypen definiert, z. B. AcxRequestTypeAny, AcxRequestTypeProperty usw.
Set
Optionale GUID zum Identifizieren einer bestimmten Elementsatz-ID.
Id
Eine ID zum Einrücken eines bestimmten Elements in der angegebenen Mengen-ID.
Rückgabewert
Gibt zurück STATUS_SUCCESS
, wenn der Aufruf erfolgreich war. Andernfalls wird ein geeigneter Fehlercode zurückgegeben. Weitere Informationen finden Sie unter Verwenden von NTSTATUS-Werten.
Hinweise
Der Treiber kann diesen DDI mehrmals aufrufen, um unterschiedliche Vorverarbeitungsrückrufe einzurichten. ACX ruft die erste auf, die gefunden wird, die dem spezifischen eingehenden WDFREQUEST-Typ entspricht.
Beispiel
Das Beispiel für die Verwendung ist unten dargestellt.
// 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);
ACX-Anforderungen
ACX-Mindestversion: 1.0
Weitere Informationen zu ACX-Versionen finden Sie unter ACX-Versionsübersicht.
Anforderungen
Anforderung | Wert |
---|---|
Header | acxcircuit.h |
IRQL | PASSIVE_LEVEL |