Partager via


Gestion des points d’entrée et de sortie

Chaque fois qu’un appareil est chargé dans le processus hôte d’un pilote, l’infrastructure de pilote en mode utilisateur (UMDF) ajoute un objet de périphérique. Chaque fois que l’infrastructure ajoute un objet, elle appelle des méthodes dans l’interface IDriverEntry . Ces méthodes se trouvent dans la classe CDriver. Le tableau suivant décrit les méthodes trouvées dans cette classe.

Méthode Description
IDriverEntry::OnDeinitialize Effectue les opérations de nettoyage nécessaires.
IDriverEntry::OnDeviceAdd Ajoute un nouvel appareil au système.
IDriverEntry::OnInitialize Gère l’initialisation du pilote.

Dans WpdHelloWorldDriver, la méthode OnDeviceAdd est la seule méthode qui effectue un travail significatif ; la méthode OnInitialize retourne simplement S_OK et la méthode OnDeinitialize ne retourne aucune valeur.

Le code de la méthode OnDeviceAdd effectue les étapes suivantes :

  1. Crée un objet de rappel d’appareil.
  2. Crée un appareil WDF.
  3. Crée l’objet WpdBaseDriver et l’affecte à l’objet d’appareil WDF.
  4. Crée un objet de rappel de file d’attente.
  5. Crée la file d’attente par défaut.

CDriver implémente également IObjectCleanup::OnCleanup, qui contient du code pour libérer une référence à l’objet WpdBaseDriver qui est conservé par l’objet d’appareil WDF pendant OnDeviceAdd.

Pour plus d’informations sur chaque interface et ses méthodes, consultez la documentation UMDF .