WdfDeviceAddRemovalRelationsPhysicalDevice-Funktion (wdfdevice.h)

[Gilt nur für KMDF]

Die WdfDeviceAddRemovalRelationsPhysicalDevice-Methode gibt an, dass ein angegebenes Gerät entfernt werden muss, wenn ein anderes angegebenes Gerät entfernt wird.

Syntax

NTSTATUS WdfDeviceAddRemovalRelationsPhysicalDevice(
  [in] WDFDEVICE      Device,
  [in] PDEVICE_OBJECT PhysicalDevice
);

Parameter

[in] Device

Ein Handle für ein Framework-Geräteobjekt.

[in] PhysicalDevice

Ein Zeiger auf eine vom Aufrufer bereitgestellte DEVICE_OBJECT Struktur, die ein physisches Geräteobjekt (PDO) darstellt.

Rückgabewert

Wenn der Vorgang erfolgreich ist, gibt WdfDeviceAddRemovalRelationsPhysicalDevice STATUS_SUCCESS zurück. Weitere Rückgabewerte sind:

Rückgabecode Beschreibung
STATUS_INVALID_PARAMETER
PhysicalDevice ist NULL.
STATUS_INSUFFICIENT_RESOURCES
Fehler bei der Speicherzuweisung.
 

Die -Methode gibt möglicherweise andere NTSTATUS-Werte zurück.

Eine Fehlerüberprüfung tritt auf, wenn der Treiber ein ungültiges Objekthandle bereitstellt.

Hinweise

Der Parameter PhysicalDevice verweist auf ein PDO eines Geräts, dessen Treiber entfernt werden müssen, wenn die Treiber für Device entfernt werden. In der Regel werden beide Geräte vom aufrufenden Treiber gesteuert. Melden Sie die untergeordneten Geräte des in Device angegebenen Geräteobjekts nicht, denn wenn der Plug & Play-Manager ein übergeordnetes Gerät entfernt, werden auch die untergeordneten Geräte des Geräts entfernt.

Ihr Treiber kann WdfDeviceAddRemovalRelationsPhysicalDevice mehrmals aufrufen, um der Liste der Geräte, die beim Entfernen des Geräts entfernt werden müssen, mehrere Geräte hinzuzufügen. Die Reihenfolge, in der die angegebenen Geräte entfernt werden, ist nicht definiert.

Beispiele

Im folgenden Codebeispiel wird das Gerät, das pPdo identifiziert, der Liste der Geräte hinzugefügt, die entfernt werden müssen, wenn das vom Gerät angegebenen Gerät entfernt wird.

status = WdfDeviceAddRemovalRelationsPhysicalDevice(
                                                    device,
                                                    pPdo
                                                    );

Anforderungen

Anforderung Wert
Zielplattform Universell
KMDF-Mindestversion 1.0
Kopfzeile wdfdevice.h (einschließen von Wdf.h)
Bibliothek Wdf01000.sys (siehe Versionierung der Frameworkbibliothek.)
IRQL <= DISPATCH_LEVEL
DDI-Complianceregeln DriverCreate(kmdf), KmdfIrql(kmdf), KmdfIrql2(kmdf), KmdfIrqlExplicit(kmdf)

Weitere Informationen

WdfDeviceClearRemovalRelationsGeräte

WdfDeviceRemoveRemovalRelationsPhysicalDevice