Partager via


Fonction de rappel PFNKSDEVICEPNPSTART (ks.h)

La routine AVStrMiniDeviceStart d’un minidriver AVStream est appelée lorsqu’une demande de IRP_MN_START_DEVICE est envoyée pour un appareil spécifié.

Syntaxe

PFNKSDEVICEPNPSTART Pfnksdevicepnpstart;

NTSTATUS Pfnksdevicepnpstart(
  [in]           PKSDEVICE Device,
  [in]           PIRP Irp,
  [in, optional] PCM_RESOURCE_LIST TranslatedResourceList,
  [in, optional] PCM_RESOURCE_LIST UntranslatedResourceList
)
{...}

Paramètres

[in] Device

Pointeur vers une structure KSDEVICE décrivant l’appareil à démarrer.

[in] Irp

Pointeur vers le IRP_MN_START_DEVICE reçu.

[in, optional] TranslatedResourceList

Pointeur vers une structure CM_RESOURCE_LIST qui contient la liste de ressources traduite extraite d’Irp. Est null si l’appareil n’a aucune ressource affectée. facultatif.

[in, optional] UntranslatedResourceList

Pointeur vers une structure de CM_RESOURCE_LIST qui contient la liste des ressources non traduites extraite d’Irp. Est null si le membre KSDEVICE de cette liste de paramètres n’a pas de ressources affectées. facultatif.

Valeur retournée

Doit retourner STATUS_SUCCESS ou le code d’erreur retourné par la tentative d’exécution de l’opération. Le démarrage est garanti si la routine retourne un code status réussi. Ne retournez PAS STATUS_PENDING.

Remarques

Spécifiez l’adresse de cette routine dans le membre Start de sa structure KSDEVICE_DISPATCH .

En règle générale, cette routine est utilisée par les minidrivers qui doivent évaluer les ressources affectées. Les listes de ressources sont extraites d’Irp pour la commodité du minidriver. Un minidriver peut analyser la liste des ressources pour rechercher l’interruption affectée à l’appareil, ainsi que l’adresse physique des ressources mémoire.

Les minidrivers peuvent utiliser cette routine pour allouer des informations de contexte à associer à l’appareil AVStream. (Ceci est similaire à un minidriver sous la classe de flux utilisant l’extension d’appareil pour stocker des informations de contexte.)

Notez que STATUS_PENDING n’est pas un code de retour légal de cette fonction. Pour effectuer des actions dans le contexte d’un thread de travail avant qu’AVStream ait terminé des actions de démarrage telles que l’activation des interfaces d’appareil, utilisez une répartition post-démarrage. Consultez AVStrMiniDevicePostStart.

Cette routine est facultative.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Disponible dans Microsoft Windows XP et les systèmes d’exploitation ultérieurs et DirectX 8.0 et versions ultérieures de DirectX.
Plateforme cible Desktop (Expérience utilisateur)
En-tête ks.h (inclure Ks.h)

Voir aussi

CM_RESOURCE_LIST

KSDEVICE_DISPATCH