Freigeben über


NdisMGetDeviceProperty-Funktion (ndis.h)

Die NdisMGetDeviceProperty-Funktion ruft Geräteobjekte ab, die zum Einrichten der Kommunikation mit einem Miniporttreiber über einen Bustreiber erforderlich sind.

Syntax

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
);

Parameter

[in] MiniportAdapterHandle

Das NDIS-Handle, das den Miniportadapter identifiziert. Dieses Handle wurde ursprünglich an die übergeben MiniportInitializeEx-Funktion .

[out, optional] PhysicalDeviceObject

Ein Zeiger auf einen vom Aufrufer zugewiesenen Puffer. Der Puffer empfängt einen Zeiger auf eine DEVICE_OBJECT Struktur, die das physische Gerät für den Miniportadapter darstellt. Dieser Zeiger ist optional.

[out, optional] FunctionalDeviceObject

Ein Zeiger auf einen vom Aufrufer zugewiesenen Puffer. Der Puffer empfängt einen Zeiger auf eine DEVICE_OBJECT Struktur. DEVICE_OBJECT stellt das funktionale Geräteobjekt dar, das NDIS für das physische Gerät erstellt. Dieser Zeiger ist optional.

[out, optional] NextDeviceObject

Ein Zeiger auf einen vom Aufrufer zugewiesenen Puffer. Der Puffer empfängt einen Zeiger auf eine DEVICE_OBJECT Struktur, die das nächste Geräteobjekt darstellt. Diesem nächsten Geräteobjekt wird in der Kette das funktionale Geräteobjekt vorangestellt, das zum Miniporttreiber gehört. NDIS erstellt dieses funktionale Geräteobjekt für das physische Gerät. Das nächste Geräteobjekt kann beispielsweise das Objekt sein, das einem Bustreiber zugeordnet ist, oder der HAL-Zeiger ist optional.

[out, optional] AllocatedResources

Ein Zeiger auf einen vom Aufrufer zugewiesenen Puffer, der einen Zeiger auf eine CM_RESOURCE_LIST Struktur empfängt. CM_RESOURCE_LIST beschreibt eine Liste der Hardwareressourcen, die der PnP-Manager dem physischen Gerät zuweist. Diese Liste enthält die Ressourcen in unformatierter Form, d. h. nicht von HAL übersetzt. Dieser Zeiger ist optional.

[out, optional] AllocatedResourcesTranslated

Ein Zeiger auf einen vom Aufrufer zugewiesenen Puffer, der einen Zeiger auf eine CM_RESOURCE_LIST Struktur empfängt. CM_RESOURCE_LIST beschreibt eine Liste der Hardwareressourcen, die der PnP-Manager dem physischen Gerät zuweist. Diese Liste enthält die Ressourcen in übersetzter Form, d. h. von HAL übersetzt. Dieser Zeiger ist optional.

Rückgabewert

Keine

Bemerkungen

Miniport-Treiber müssen bestimmte Informationen abrufen, um ihre Kommunikation einzurichten. Miniporttreiber für Miniportinstanzen, die über Bustreiber kommunizieren, verwenden NdisMGetDeviceProperty , um diese Informationen abzurufen. Miniporttreiberinstanzen, die an USB-Busse (Universal Serial Bus) oder IEEE 1394-Busse angeschlossen sind, erfordern beispielsweise Miniporttreiber, die eine Standardschnittstelle des NDIS-Miniporttreibers am oberen Rand verfügbar machen und die Klassenschnittstelle für den jeweiligen Bus am unteren Rand verwenden. Um die USB- oder 1394-Klassenschnittstelle zu verwenden, erstellt und übermittelt ein Miniporttreiber I/O Request Packets (IRPs). Der Miniporttreiber verwendet die physischen und next-device-Objekte, die NdisMGetDeviceProperty abruft, um IRPs an die Klassenschnittstelle für einen bestimmten Bus zu übermitteln. Weitere Informationen zum Erstellen und Übermitteln von IRPs an Bustreiber finden Sie unter Behandeln von IRPs.

Zeiger auf DEVICE_OBJECT für die physischen, funktionalen und nächsten Geräteobjekte, die NdisMGetDeviceProperty abruft, sind lediglich Handles, die für den Miniporttreiber undurchsichtig sind.

Miniport-Treiber können NdisMGetDeviceProperty aufrufen, um Zeiger auf "rohe" oder "übersetzte" Ressourcen abzurufen. Rohressourcen wurden nicht von HAL übersetzt; übersetzte Ressourcen wurden bereits verwendet. Weitere Informationen zu rohen und übersetzten Ressourcen finden Sie unter Plug & Play.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Unterstützt in NDIS 5.1 und NDIS 6.0 und höher. Informationen zu NDIS 5.1-Treibern finden Sie unter NdisMGetDeviceProperty (NDIS 5.1).
Zielplattform Universell
Header ndis.h (einschließlich Ndis.h)
Bibliothek Ndis.lib
IRQL PASSIVE_LEVEL
DDI-Complianceregeln Irql_Miniport_Driver_Function(ndis)

Weitere Informationen

DEVICE_OBJECT

MiniportInitializeEx