Condividi tramite


Funzione CmRegisterCallbackEx (wdm.h)

La routine CmRegisterCallbackEx registra una routine RegistryCallback .

Sintassi

NTSTATUS CmRegisterCallbackEx(
  [in]           PEX_CALLBACK_FUNCTION Function,
  [in]           PCUNICODE_STRING      Altitude,
  [in]           PVOID                 Driver,
  [in, optional] PVOID                 Context,
  [out]          PLARGE_INTEGER        Cookie,
                 PVOID                 Reserved
);

Parametri

[in] Function

Puntatore alla routine RegistryCallback da registrare.

[in] Altitude

Puntatore a una struttura UNICODE_STRING . Questa struttura deve contenere una stringa che rappresenta l'altitudine del driver minifilter chiamante. Per altre informazioni, vedere la sezione Osservazioni.

[in] Driver

Puntatore alla struttura DRIVER_OBJECT che rappresenta il driver.

[in, optional] Context

Valore definito dal driver che configuration manager passerà come parametro CallbackContext alla routine RegistryCallback .

[out] Cookie

Puntatore a una variabile LARGE_INTEGER che riceve il valore che identifica la routine di callback. Quando si annulla la registrazione della routine di callback, passare questo valore come parametro Cookie a CmUnRegisterCallback.

Reserved

Questo parametro è riservato per usi futuri.

Valore restituito

CmRegisterCallbackEx restituisce STATUS_SUCCESS se l'operazione ha esito positivo. In caso contrario, questa routine potrebbe restituire uno dei valori NTSTATUS seguenti:

Codice restituito Descrizione
STATUS_FLT_INSTANCE_ALTITUDE_COLLISION
Il driver chiamante o un altro driver ha già registrato una routine RegistryCallback per l'altitudine specificata.
STATUS_INSUFFICIENT_RESOURCES
Tentativo di allocazione della memoria non riuscito.

Commenti

La routine CmRegisterCallbackEx è disponibile a partire da Windows Vista.

Un driver può chiamare CmRegisterCallback o CmRegisterCallbackEx per registrare una routine RegistryCallback , che viene chiamata ogni volta che un thread esegue un'operazione nel Registro di sistema.

Il parametro Altitude definisce la posizione del driver minifilter rispetto ad altri minifiltri nello stack di I/O quando viene caricato il minifiltro. L'allocazione di altitudini ai minifiltri è gestita da Microsoft. Per altre informazioni sulle altitudini, vedere Gruppi di ordini di carico e altitudini per i driver minifiltri.

Chiamare CmUnRegisterCallback per annullare la registrazione di una routine di callback registrata da CmRegisterCallbackEx .

Per altre informazioni sulle operazioni cmRegisterCallbackEx e filtro del Registro di sistema, vedere Filtro delle chiamate al Registro di sistema.

Requisiti

Requisito Valore
Client minimo supportato Disponibile a partire da Windows Vista.
Piattaforma di destinazione Universale
Intestazione wdm.h (include Wdm.h, Ntddk.h, Ntifs.h)
Libreria NtosKrnl.lib
DLL NtosKrnl.exe
IRQL <=APC_LEVEL
Regole di conformità DDI HwStorPortProhibitedDDDIs(storport), IrqlExApcLte2(wdm)

Vedi anche

CmRegisterCallback

CmUnRegisterCallback

DRIVER_OBJECT

RegistryCallback

UNICODE_STRING