Partager via


Fonction de rappel PFNKSDEVICEPNPSTART (ks.h)

Une routine de minidriver AVStream AVStrMiniDeviceStart 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 de Irp . Est égal à NULL si Appareil n’a pas de ressources affectées. Optionnel.

[in, optional] UntranslatedResourceList

Pointeur vers une structure CM_RESOURCE_LIST qui contient la liste de ressources non convertie extraite de Irp. Est égal à NULL si le membre KSDEVICE de cette liste de paramètres n’a pas de ressources affectées. Optionnel.

Valeur de retour

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 pour réussir si la routine retourne un code d’état réussi. Ne retournez pas STATUS_PENDING.

Remarques

Spécifiez l’adresse de cette routine dans le start membre de sa structure de 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 de 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. (Il s’agit d’un minidriver sous la classe de flux à l’aide de l’extension d’appareil pour stocker les 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 que AVStream n’ait terminé les actions de démarrage telles que l’activation des interfaces d’appareil, utilisez une distribution post-démarrage. Voir AVStrMiniDevicePostStart.

Cette routine est facultative.

Exigences

Exigence Valeur
client minimum 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 Bureau
d’en-tête ks.h (include Ks.h)

Voir aussi

CM_RESOURCE_LIST

KSDEVICE_DISPATCH