Condividi tramite


Funzione IoAllocateDriverObjectExtension (wdm.h)

La routine IoAllocateDriverObjectExtension alloca un'area di contesto per driver, denominata estensione dell'oggetto driver, e assegna un identificatore univoco.

Sintassi

NTSTATUS IoAllocateDriverObjectExtension(
  [in]  PDRIVER_OBJECT DriverObject,
  [in]  PVOID          ClientIdentificationAddress,
  [in]  ULONG          DriverObjectExtensionSize,
  [out] PVOID          *DriverObjectExtension
);

Parametri

[in] DriverObject

Puntatore a un oggetto driver a cui verrà associata l'area di contesto.

[in] ClientIdentificationAddress

Specifica un identificatore univoco per l'area di contesto da allocare.

[in] DriverObjectExtensionSize

Specifica la lunghezza, in byte, dell'area di contesto da allocare.

[out] DriverObjectExtension

Puntatore a, al completamento, l'area del contesto allocata.

Valore restituito

IoAllocateDriverObjectExtension restituisce uno dei codici NTSTATUS seguenti:

Codice restituito Descrizione
STATUS_SUCCESS
Indica che la routine ha allocato un'estensione delle dimensioni richieste.
STATUS_INSUFFICIENT_RESOURCES
Indica che non è stato possibile allocare la memoria per l'estensione dell'oggetto driver.
STATUS_OBJECT_NAME_COLLISION
Indica che esiste già un'estensione dell'oggetto driver con il valore ClientIdentificationAddress specificato.

Commenti

La memoria allocata dal sistema per l'estensione dell'oggetto driver è lo spazio di archiviazione residente ed è accessibile da qualsiasi IRQL. L'archiviazione allocata viene liberata automaticamente dal gestore di I/O quando l'oggetto driver viene eliminato.

I chiamanti di questa routine devono fornire un identificatore univoco per ClientIdentificationAddress. Per recuperare un puntatore all'area di contesto, un chiamante passa ClientIdentificationAddress a IoGetDriverObjectExtension.

Requisiti

Requisito Valore
Client minimo supportato Disponibile a partire da Windows 2000.
Piattaforma di destinazione Universale
Intestazione wdm.h (include Wdm.h, Ntddk.h, Ntifs.h)
Libreria NtosKrnl.lib
DLL NtosKrnl.exe
IRQL <= DISPATCH_LEVEL

Vedi anche

IoGetDriverObjectExtension