Accéder aux pilotes Kernel-Mode pour les appareils à image fixe
Microsoft fournit des pilotes en mode noyau wdM pour prendre en charge les périphériques à image fixe connectés aux bus SCSI et USB. Les deux pilotes prennent en charge les appareils Plug-and-Play et fournissent des services permettant d’ajouter, de supprimer, de démarrer, d’arrêter et de créer des entrées de Registre pour les appareils Plug-and-Play. En outre, les deux pilotes fournissent des opérations de suspension et de reprise pour les appareils qui prennent en charge la gestion de l’alimentation.
Les minidrivers d’image fixe en mode utilisateur peuvent accéder à ces pilotes en mode noyau en appelant CreateFile, ReadFile, WriteFile et DeviceIoControl (décrits dans la documentation Microsoft Windows SDK). ReadFile et WriteFile sont utilisés pour les transferts de données de bloc. Plus précisément, ReadFile est appelé pour obtenir des données d’image, et WriteFile est utilisé pour envoyer des commandes aux appareils qui acceptent les commandes en tant que flux de données.
Avant d’appeler ReadFile, Writefile ou DeviceIoControl, le minidriver doit appeler IStiDeviceControl::GetMyDevicePortName pour obtenir le nom de port de l’appareil, puis utiliser ce nom de port comme paramètre pour CreateFile.