PFNKSDEVICEPNPSTART-Rückruffunktion (ks.h)

Die AVStrMiniDeviceStart-Routine eines AVStream-Minidrivers wird aufgerufen, wenn eine IRP_MN_START_DEVICE Anforderung für ein angegebenes Gerät gesendet wird.

Syntax

PFNKSDEVICEPNPSTART Pfnksdevicepnpstart;

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

Parameter

[in] Device

Zeiger auf eine KSDEVICE-Struktur , die das zu startende Gerät beschreibt.

[in] Irp

Zeiger auf den empfangenen IRP_MN_START_DEVICE .

[in, optional] TranslatedResourceList

Zeiger auf eine CM_RESOURCE_LIST-Struktur , die die übersetzte Ressourcenliste enthält, die aus Irp extrahiert wurde. Gleich NULL , wenn das Gerät keine zugewiesenen Ressourcen aufweist. Optional.

[in, optional] UntranslatedResourceList

Zeiger auf eine CM_RESOURCE_LIST-Struktur , die die nicht übersetzte Ressourcenliste enthält, die aus Irp extrahiert wurde. Entspricht NULL , wenn dem KSDEVICE-Member dieser Parameterliste keine Ressourcen zugewiesen sind. Optional.

Rückgabewert

Sollte STATUS_SUCCESS oder den Fehlercode zurückgeben, der vom Versuch, den Vorgang auszuführen, zurückgegeben wurde. Der Start ist garantiert erfolgreich, wenn die Routine einen erfolgreichen status Code zurückgibt. Geben Sie NICHT STATUS_PENDING zurück.

Hinweise

Geben Sie die Adresse dieser Routine im Startelement ihrer KSDEVICE_DISPATCH-Struktur an.

In der Regel wird diese Routine von Minidrivern verwendet, die zugewiesene Ressourcen auswerten müssen. Ressourcenlisten werden aus Irp extrahiert, um den Minitreiber zu vereinfachen. Ein Minidriver kann die Ressourcenliste analysieren, um den dem Gerät zugewiesenen Interrupt sowie die physische Adresse der Speicherressourcen zu finden.

Minidriver können diese Routine verwenden, um Kontextinformationen zuzuweisen, die dem AVStream-Gerät zugeordnet werden. (Dies ähnelt einem Minidriver unter der Streamklasse, die die Geräteerweiterung zum Speichern von Kontextinformationen verwendet.)

Beachten Sie, dass STATUS_PENDING kein legaler Rückgabecode aus dieser Funktion ist. Um Aktionen im Kontext eines Workerthreads auszuführen, bevor AVStream Startaktionen abgeschlossen hat, z. B. das Aktivieren von Geräteschnittstellen, verwenden Sie eine Post-Start-Versendung. Siehe AVStrMiniDevicePostStart.

Diese Routine ist optional.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Verfügbar in Microsoft Windows XP und höheren Betriebssystemen und DirectX 8.0 und höher DirectX-Versionen.
Zielplattform Desktop
Kopfzeile ks.h (einschließlich Ks.h)

Weitere Informationen

CM_RESOURCE_LIST

KSDEVICE_DISPATCH