Partager via


Méthode IWDFRemoteTarget ::CloseForQueryRemove (wudfddi.h)

[Avertissement : UMDF 2 est la dernière version d’UMDF et remplace UMDF 1. Tous les nouveaux pilotes UMDF doivent être écrits à l’aide d’UMDF 2. Aucune nouvelle fonctionnalité n’est ajoutée à UMDF 1 et la prise en charge d’UMDF 1 est limitée sur les versions plus récentes de Windows 10. Les pilotes Windows universels doivent utiliser UMDF 2. Pour plus d’informations, consultez Prise en main avec UMDF.]

La méthode CloseForQueryRemove ferme une cible d’E/S distante , car le système d’exploitation peut autoriser la suppression de l’appareil.

Syntaxe

HRESULT CloseForQueryRemove();

Valeur de retour

La méthode CloseForQueryRemove retourne toujours S_OK.

Remarques

Si votre pilote fournit une fonction de rappel IRemoteTargetCallbackRemoval ::OnRemoteTargetQueryRemove , la fonction de rappel doit appeler CloseForQueryRemove si elle retourne TRUE pour indiquer que l’appareil peut être supprimé.

La méthode CloseForQueryRemove termine ou annule toutes les demandes d’E/S que le pilote a envoyées à la cible d’E/S.

Après qu’un pilote a appelé CloseForQueryRemove, le pilote ne peut pas envoyer de demandes d’E/S à la cible d’E/S tant qu’il n’appelle pas IWDFRemoteTarget ::Rouvrir.

Pour plus d’informations sur la méthode CloseForQueryRemove , consultez Contrôle de l’état d’une cible d’E/S générale dans UMDF.

Exemples

L’exemple de code suivant montre une fonction de rappel IRemoteTargetCallbackRemoval ::OnRemoteTargetQueryRemove qui appelle CloseForQueryRemove.

BOOL
STDMETHODCALLTYPE
CMyRemoteTarget::OnRemoteTargetQueryRemove(
    __in IWDFRemoteTarget  *FxTarget
    )
{
    //
    // Here, do any driver-specific actions that your driver requires
    // to stop sending I/O requests to the I/O target.
    //
...
    //
    // Close the target.
    //
    FxTarget->CloseForQueryRemove();

    //
    // Return TRUE if you want to allow removal of the device.
    //
    return TRUE;
}

Configuration requise

Condition requise Valeur
Fin de la prise en charge Non disponible dans UMDF 2.0 et versions ultérieures.
Plateforme cible Desktop (Expérience utilisateur)
Version UMDF minimale 1,9
En-tête wudfddi.h (inclure Wudfddi.h)
DLL WUDFx.dll

Voir aussi

IWDFRemoteTarget

IWDFRemoteTarget ::Close