SpbControllerSetRequestAttributes, fonction (spbcx.h)
La méthode SpbControllerSetRequestAttributes définit des attributs d’objet qui seront utilisés pour tous les objets SPBREQUEST que l’extension de framework SPB (SpbCx) remet au pilote du contrôleur SPB.
Syntaxe
void SpbControllerSetRequestAttributes(
[in] WDFDEVICE FxDevice,
[in] PWDF_OBJECT_ATTRIBUTES RequestAttributes
);
Paramètres
[in] FxDevice
Handle WDFDEVICE sur l’objet d’appareil qui représente le contrôleur SPB.
[in] RequestAttributes
Pointeur vers une structure WDF_OBJECT_ATTRIBUTES allouée par l’appelant qui contient des attributs pour les objets SPBREQUEST du contrôleur SPB.
Valeur de retour
Aucun
Remarques
Pendant l’initialisation de l’appareil, votre pilote de contrôleur SPB peut appeler cette méthode pour définir les attributs par défaut pour les objets SPBREQUEST. Par la suite, SpbCx affecte ces attributs à toutes les demandes d’E/S qu’il remet (ou transfère) aux appareils cibles sur le bus.
RequestAttributes pointe vers une structure WDF_OBJECT_ATTRIBUTES. L’appelant doit avoir précédemment appelé la fonction WDF_OBJECT_ATTRIBUTES_INIT pour initialiser cette structure. Après cet appel, mais avant l’appel à SpbControllerSetRequestAttributes, l’appelant peut modifier les valeurs des membres suivants de cette structure :
- EvtCleanupCallback
- EvtDestroyCallback
- ContextSizeOverride
- ContextTypeInfo
WDF_OBJECT_ATTRIBUTES_INIT initialise les membres EvtCleanupCallback et EvtDestroyCallback à NULL. Si vous modifiez ces valeurs par défaut pour inscrire une EvtCleanupCallback ou EvtDestroyCallback fonction de rappel, cette fonction est appelée chaque fois qu’une requête d’E/S arrive dans la file d’attente du contrôleur SPB, qui est gérée par SpbCx. Une telle requête d’E/S entraîne l’appel de la fonction EvtCleanupCallback ou EvtDestroyCallback, même si SpbCx ne présente jamais la demande au pilote du contrôleur SPB (car la demande est annulée une fois qu’elle arrive dans la file d’attente, mais avant son passage au pilote).
Le pilote du contrôleur SPB doit appeler SpbControllerSetRequestAttributes avant qu’il n'valide l’objet d’appareil, autrement dit, avant de retourner à partir de la EvtDriverDeviceAdd rappel ou ajoute l’objet PDO à la liste enfant du contrôleur. La liste enfant représente les appareils attachés au bus. Pour plus d’informations, consultez énumération des appareils sur un bus.
Exigences
Exigence | Valeur |
---|---|
client minimum pris en charge | Disponible à partir de Windows 8. |
plateforme cible | Universel |
d’en-tête | spbcx.h |
bibliothèque | Spbcxstubs.lib |
IRQL | PASSIVE_LEVEL |