Fonction SpbTargetGetFileObject (spbcx.h)
La méthode SpbTargetGetFileObject accepte, en tant que paramètre d’entrée, un handle SPBTARGET sur un appareil cible ouvert et retourne un handle WDFFILEOBJECT à cette cible.
Syntaxe
WDFFILEOBJECT SpbTargetGetFileObject(
[in] SPBTARGET Target
);
Paramètres
[in] Target
Un handle SPBTARGET pour un appareil cible sur le bus.
Valeur retournée
SpbTargetGetFileObject retourne un handle WDFFILEOBJECT à un appareil cible ouvert sur le bus. La méthode retourne NULL si la connexion à la cible a été fermée par un rappel d’événement EvtSpbTargetDisconnect .
Remarques
Votre pilote de contrôleur peut appeler cette méthode pour obtenir un handle WDFFILEOBJECT sur un appareil cible ouvert sur le bus. Le pilote de contrôleur SPB peut ensuite utiliser ce handle comme paramètre d’entrée pour les méthodes WDF qui nécessitent un tel handle.
SpbTargetGetFileObject retourne null uniquement si le handle WDFFILEOBJECT à la cible a été fermé, mais, avant sa fermeture, le pilote du contrôleur SPB a pris une référence supplémentaire sur l’objet SBPTARGET pour prolonger sa durée de vie.
Si la connexion a été fermée et que le pilote du contrôleur SPB ne contient aucune référence à l’objet SPBTARGET, le handle SBPTARGET n’est plus valide. La transmission d’un handle non valide à SpbTargetGetFileObject entraîne un bogue case activée.
Une fois que SpbTargetGetFileObject renvoie un handle WDFFILEOBJECT, il n’est pas garanti que la connexion cible reste ouverte, sauf si un autre objet (par exemple, une demande d’E/S active) contient une référence à l’objet WDFFILEOBJECT pour l’empêcher de se fermer de manière inattendue. Cette méthode est très utile et, par conséquent, la plus susceptible d’être appelée lorsque l’ouverture de la connexion cible est garantie. En règle générale, de tels appels se produisent pendant les rappels EvtSpbTargetConnect et EvtSpbTargetDisconnect , ainsi que pendant le traitement des demandes d’E/S.
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Disponible à partir de Windows 8. |
Plateforme cible | Universal |
En-tête | spbcx.h |
Bibliothèque | Spbcxstubs.lib |
IRQL | <= DISPATCH_LEVEL |