Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Die AcxCircuitInitAssignAcxRequestPreprocessCallback Funktion fügen einen WDFREQUEST-Vorverarbeitungsrü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 Schaltkreisinitialisierung definiert. ACXCIRCUIT_INIT ist ein undurchsichtiges Objekt, das für die Schaltkreisinitialisierung 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 vom ACXCONTEXT-Objekt definierte Treiberkontext. Weitere Informationen zu ACX-Objekten finden Sie unter Summary of ACX Objects.
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 Identifizieren eines bestimmten Elements in der angegebenen Satz-ID.
Rückgabewert
Gibt STATUS_SUCCESS zurück, wenn der Anruf erfolgreich war. Andernfalls wird ein entsprechender Fehlercode zurückgegeben. Weitere Informationen finden Sie unter Verwenden von NTSTATUS-Werten.
Bemerkungen
Der Treiber kann diesen DDI mehrmals aufrufen, um verschiedene Vorverarbeitungsrückrufe einzurichten. ACX ruft den ersten Aufruf auf, der mit dem spezifischen eingehenden WDFREQUEST-Typ übereinstimmt.
Beispiel
Die Beispielverwendung wird unten gezeigt.
// 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
Mindestens ACX-Version: 1.0
Weitere Informationen zu ACX-Versionen finden Sie unter ACX-Versionsübersicht.
Anforderungen
| Anforderung | Wert |
|---|---|
| Header- | acxcircuit.h |
| IRQL- | PASSIVE_LEVEL |