PFNKSDEVICEPNPSTART 回呼函式 (ks.h)
當指定裝置傳送IRP_MN_START_DEVICE要求時,會呼叫AVStream minidriver的AVStrMiniDeviceStart例程。
語法
PFNKSDEVICEPNPSTART Pfnksdevicepnpstart;
NTSTATUS Pfnksdevicepnpstart(
[in] PKSDEVICE Device,
[in] PIRP Irp,
[in, optional] PCM_RESOURCE_LIST TranslatedResourceList,
[in, optional] PCM_RESOURCE_LIST UntranslatedResourceList
)
{...}
參數
[in] Device
描述要啟動之裝置的 KSDEVICE 結構的指標。
[in] Irp
已收到的 IRP_MN_START_DEVICE 指標。
[in, optional] TranslatedResourceList
包含從 Irp 擷取之翻譯資源清單之CM_RESOURCE_LIST結構的指標。 如果裝置沒有指派的資源,則等於 NULL。 選擇性。
[in, optional] UntranslatedResourceList
CM_RESOURCE_LIST 結構的指標,其中包含從 Irp 擷取的未傳輸資源清單。 如果此參數清單的 KSDEVICE 成員沒有指派的資源,則等於 NULL。 選擇性。
傳回值
應該傳回STATUS_SUCCESS或從嘗試執行作業傳回的錯誤碼。 如果例程傳回成功的狀態代碼,則開始保證會成功。 請勿傳回STATUS_PENDING。
備註
在KSDEVICE_DISPATCH結構的Start 成員中指定這個例程的位址。
一般而言,此例程是由必須評估指派資源的minidrivers使用。 資源清單會從 Irp 擷取,方便迷你驅動程式使用。 minidriver 可以剖析資源清單,以尋找指派給裝置的中斷,以及記憶體資源的實體位址。
Minidrivers 可以使用此例程來配置內容資訊,以與AVStream裝置產生關聯。 (這類似於串流類別下的minidriver,使用裝置擴充功能來儲存內容資訊。)
請注意,STATUS_PENDING不是此函式的法律傳回碼。 若要在AVStream完成啟動動作,例如啟用裝置介面等啟動動作之前,請在背景工作線程的內容中執行動作,請使用啟動後分派。 請參閱 AVStrMiniDevicePostStart。
此例程是選擇性的。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | 適用於 Microsoft Windows XP 和更新版本的作業系統和 DirectX 8.0 和更新版本的 DirectX 版本。 |
目標平台 | 桌面 |
標頭 | ks.h (包含 Ks.h) |