Fonction IoAllocateController (ntddk.h)
La routine IoAllocateController configure l’appel à une routine d’E/S fournie par le pilote ControllerControl dès que le contrôleur d’appareil, représenté par l’objet contrôleur donné, est disponible pour effectuer une opération d’E/S pour l’appareil cible, représentée par l’objet 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 de l’appareil, 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 lorsqu’il est appelé.
Valeur de retour
Aucun
Remarques
Cette routine réserve un accès exclusif au contrôleur de 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.
Exigences
Exigence | Valeur |
---|---|
client minimum pris en charge | Disponible à partir de Windows 2000. |
plateforme cible | Universel |
d’en-tête | ntddk.h (include 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) |