Fonction IoAllocateController (ntddk.h)
La routine IoAllocateController configure l’appel à une routine ControllerControl fournie par le pilote dès que le contrôleur de périphérique, représenté par l’objet contrôleur donné, est disponible pour effectuer une opération d’E/S pour l’appareil cible, représenté par l’objet d’appareil donné.
Syntaxe
void IoAllocateController(
[in] PCONTROLLER_OBJECT ControllerObject,
[in] PDEVICE_OBJECT DeviceObject,
[in] PDRIVER_CONTROL ExecutionRoutine,
[in, optional] PVOID Context
);
Paramètres
[in] ControllerObject
Pointeur vers un objet de contrôleur créé par le pilote, représentant généralement un contrôleur physique à allouer pour une opération d’E/S sur un appareil attaché.
[in] DeviceObject
Pointeur vers l’objet device, représentant l’appareil cible de l’IRP actuel.
[in] ExecutionRoutine
Pointeur vers la routine ControllerControl fournie par le pilote.
[in, optional] Context
Pointeur vers un contexte déterminé par le pilote, passé à la routine ControllerControl du pilote lors de son appel.
Valeur de retour
None
Remarques
Cette routine réserve un accès exclusif au contrôleur matériel pour l’appareil spécifié.
La routine ControllerControl retourne une valeur indiquant si le contrôleur reste alloué à l’appareil, DeallocateObject ou KeepObject. S’il retourne KeepObject, le pilote doit ensuite appeler IoFreeController pour libérer l’objet contrôleur.
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Disponible à partir de Windows 2000. |
Plateforme cible | Universal |
En-tête | ntddk.h (incluez Ntddk.h) |
Bibliothèque | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | DISPATCH_LEVEL |
Règles de conformité DDI | HwStorPortProhibitedDDIs(storport), IrqlDispatch(storport), IrqlDispatch(storport), IrqlDispatch(wdm), SpNoWait(storport), StorPortStartIo(storport) |