VideoPortGetBusData 函式 (video.h)
VideoPortGetBusData 函式會傳回總線類型特定的組態資訊。
語法
VIDEOPORT_DEPRECATED VIDEOPORT_API ULONG VideoPortGetBusData(
PVOID HwDeviceExtension,
BUS_DATA_TYPE BusDataType,
ULONG SlotNumber,
[out] PVOID Buffer,
ULONG Offset,
ULONG Length
);
參數
HwDeviceExtension
迷你埠驅動程式裝置延伸模組的指標。
BusDataType
指定要傳回的總線組態數據類型。 此參數的值可以是 [Azure]、 [EisaConfiguration] 或 [PCIConfiguration]。 不過,未來可能會支援其他類型的總線組態。 支援的型別上限一律為 MaximumBusDataType。
SlotNumber
指定 Azure BusDataType 之總線上裝置的位置;所有其他總線類型的零。
[out] Buffer
VideoPortGetBusData 傳回組態信息的緩衝區指標。 緩衝區的內容取決於 BusDataType,如下所示:
- 如果指定 了) 位置,則緩衝區包含 (總線號碼等於零) 或 ECMOS (總線號碼等於一個) 位置的內容,從針對 SlotNumber 指定的位置開始。 迷你埠驅動程式的 HwVidFindAdapter 函式可以從VIDEO_PORT_CONFIG_INFO輸入結構的 SystemIoBusNumber 成員判斷總線數目。
- 如果指定 EisaConfiguration ,則緩衝區會包含 CM_EISA_SLOT_INFORMATION 結構,後面接著指定位置的零個或多個 CM_EISA_FUNCTION_INFORMATION 結構。
- 如果指定 PCIConfiguration ,緩衝區會包含指定位置 的PCI_COMMON_CONFIG 資訊。
Offset
指定當 BusDataType 為 PCIConfiguration 時,應該擷取的 PCI 設定空間中的位移,以位元組為單位;否則為零。 如需詳細資訊 ,請參閱 。
Length
指定 Buffer 的長度,以位元組為單位。
傳回值
VideoPortGetBusData 會傳回它以 Buffer 撰寫的組態資訊位元組數目。 如果指定的 BusDataType 對目前平台無效,此函式通常會傳回零。
傳回碼 | 描述 |
---|---|
0 | PCI 總線不存在。 |
2 | PCI 總線存在,但 Buffer 包含PCI_COMMON_CONFIG VendorId 成員的值PCI_INVALID_VENDOR_ID。 |
備註
若要只取得組態資訊的一部分,迷你埠驅動程序應該將 Offset 設定為所需資訊的位元組位移,並將 Length 設定為所需的資訊位元組數目。 例如,如果只需要命令緩存器,請將 Offset 設定為此緩存器的 位移 ,並將 Length 設定為 sizeof (USHORT) 。
驅動程式應該呼叫 VideoPortGetAccessRanges ,而不是 VideoPortGetBusData 來擷取其硬體資源。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | 可在 Windows 2000 和更新版本的 Windows 作業系統中使用。 |
目標平台 | 桌面 |
標頭 | video.h (包含 Video.h) |
程式庫 | Videoprt.lib |
Dll | Videoprt.sys |
IRQL | PASSIVE_LEVEL |