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
Der NDIS-Handle, der den Miniportadapter identifiziert. Dieses Handle wurde ursprünglich an die 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 könnte z. B. das Objekt sein, das einem Bustreiber zugeordnet ist, oder HAL Dieser 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
Nichts
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. Beispielsweise erfordern Miniporttreiberinstanzen, die an universal Serial Bus (USB) oder IEEE 1394-Busse angeschlossen sind, Miniporttreiber, die eine standardmäßige NDIS Miniport-Treiberschnittstelle am oberen Rand verfügbar machen und die Klassenschnittstelle für den bestimmten Bus am unteren Rand verwenden. Um die USB- oder 1394-Klassenschnittstelle zu verwenden, erstellt und übermittelt ein Miniporttreiber I/O-Anforderungspakete (IRPs). Der Miniporttreiber verwendet die physischen und nächsten Geräteobjekte, 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 Umgang mit IRPs.
Zeiger auf DEVICE_OBJECT für die physischen, funktionalen und nächsten Geräteobjekte, die NdisMGetDeviceProperty abgerufen werden, sind einfach Handles, die für den Miniporttreiber undurchsichtig sind.
Miniporttreiber können NdisMGetDeviceProperty- aufrufen, um Zeiger auf "raw"- oder "translated"-Ressourcen abzurufen. Rohressourcen wurden von HAL nicht übersetzt; übersetzte Ressourcen wurden abgerufen. Weitere Informationen zu rohen und übersetzten Ressourcen finden Sie unter Plug and Play.
Anforderungen
Anforderung | Wert |
---|---|
mindestens unterstützte 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- | Universal |
Header- | ndis.h (include Ndis.h) |
Library | Ndis.lib |
IRQL- | PASSIVE_LEVEL |
DDI-Complianceregeln | Irql_Miniport_Driver_Function(ndis) |