NdisMGetDeviceProperty 函式 (ndis.h)

NdisMGetDeviceProperty 函式會擷取透過總線驅動程式設定與迷你埠驅動程序通訊所需的裝置物件。

語法

void NdisMGetDeviceProperty(
  [in]            NDIS_HANDLE       MiniportAdapterHandle,
  [out, optional] PDEVICE_OBJECT    *PhysicalDeviceObject,
  [out, optional] PDEVICE_OBJECT    *FunctionalDeviceObject,
  [out, optional] PDEVICE_OBJECT    *NextDeviceObject,
  [out, optional] PCM_RESOURCE_LIST *AllocatedResources,
  [out, optional] PCM_RESOURCE_LIST *AllocatedResourcesTranslated
);

參數

[in] MiniportAdapterHandle

識別迷你埠配接器的 NDIS 句柄。 此句柄原本已傳遞至 MiniportInitializeEx 函式。

[out, optional] PhysicalDeviceObject

呼叫端配置的緩衝區指標。 緩衝區會接收代表迷你埠配接器實體裝置 之DEVICE_OBJECT 結構的指標。 此指標是選擇性的。

[out, optional] FunctionalDeviceObject

呼叫端配置的緩衝區指標。 緩衝區會接收 DEVICE_OBJECT 結構的指標。 DEVICE_OBJECT 代表 NDIS 為實體裝置建立的功能裝置物件。 此指標是選擇性的。

[out, optional] NextDeviceObject

呼叫端配置的緩衝區指標。 緩衝區會接收代表下一個裝置物件的 DEVICE_OBJECT 結構的指標。 這個下一個裝置物件會在鏈結中加上屬於迷你埠驅動程式的功能裝置物件。 NDIS 會為實體裝置建立這項功能裝置物件。 例如,下一個裝置物件可能是與總線驅動程式相關聯的物件,或 HAL 此指標是選擇性的。

[out, optional] AllocatedResources

呼叫端配置的緩衝區指標,可接收CM_RESOURCE_LIST結構的指標。 CM_RESOURCE_LIST描述 PnP 管理員指派給實體裝置的硬體資源清單。 此清單包含原始格式的資源,也就是不是由 HAL 翻譯。 此指標是選擇性的。

[out, optional] AllocatedResourcesTranslated

呼叫端配置的緩衝區指標,可接收CM_RESOURCE_LIST結構的指標。 CM_RESOURCE_LIST描述 PnP 管理員指派給實體裝置的硬體資源清單。 此清單包含翻譯格式的資源,也就是由 HAL 翻譯。 此指標是選擇性的。

傳回值

備註

迷你埠驅動程序必須擷取特定資訊,才能設定其通訊。 迷你埠實例的迷你埠驅動程式會使用 NdisMGetDeviceProperty 來擷取此資訊。 例如,連接至通用序列總線的迷你埠驅動程序實例 (USB) 或 IEEE 1394 總線需要迷你埠驅動程式,這些驅動程式會在其上邊緣公開標準 NDIS 迷你埠驅動程式介面,並使用類別介面作為其下邊緣的特定總線。 若要使用USB或1394類別介面,迷你埠驅動程式會建立並提交I/O要求封包 (IRP) 。 迷你埠驅動程式會使用 NdisMGetDeviceProperty 擷取的實體和下一個裝置物件,將 IRP 提交至特定總線的類別介面。 若要找出建立和提交 IRP 給總線驅動程式的詳細資訊,請參閱 處理 IRP

NdisMGetDeviceProperty 所擷取之實體、功能及下一個裝置物件的DEVICE_OBJECT指標只是迷你埠驅動程式不透明的句柄。

迷你埠驅動程式可以呼叫 NdisMGetDeviceProperty ,以擷取「原始」或「翻譯」資源的指標。 未經 HAL 轉譯的原始資源;已翻譯的資源。 若要尋找原始和翻譯資源的詳細資訊,請參閱 隨插即用

規格需求

需求
最低支援的用戶端 NDIS 5.1 和 NDIS 6.0 和更新版本支援。 如需 NDIS 5.1 驅動程式,請參閱 NdisMGetDeviceProperty (NDIS 5.1) 。
目標平台 Universal
標頭 ndis.h (包括 Ndis.h)
程式庫 Ndis.lib
IRQL PASSIVE_LEVEL
DDI 合規性規則 Irql_Miniport_Driver_Function ()

另請參閱

DEVICE_OBJECT

MiniportInitializeEx