WDF_DEVICE_PNP_CAPABILITIES-Struktur (wdfdevice.h)

[Gilt für KMDF und UMDF]

Die WDF_DEVICE_PNP_CAPABILITIES-Struktur beschreibt die Plug & Play Funktionen eines Geräts.

Syntax

typedef struct _WDF_DEVICE_PNP_CAPABILITIES {
  ULONG         Size;
  WDF_TRI_STATE LockSupported;
  WDF_TRI_STATE EjectSupported;
  WDF_TRI_STATE Removable;
  WDF_TRI_STATE DockDevice;
  WDF_TRI_STATE UniqueID;
  WDF_TRI_STATE SilentInstall;
  WDF_TRI_STATE SurpriseRemovalOK;
  WDF_TRI_STATE HardwareDisabled;
  WDF_TRI_STATE NoDisplayInUI;
  ULONG         Address;
  ULONG         UINumber;
} WDF_DEVICE_PNP_CAPABILITIES, *PWDF_DEVICE_PNP_CAPABILITIES;

Member

Size

Die Größe (in Bytes) dieser Struktur.

LockSupported

Ein WDF_TRI_STATE typisierter Wert, der angibt, dass das Gerät in seinem Steckplatz gesperrt werden kann, um den Auswurf zu verhindern, wenn er auf WdfTrue festgelegt ist. (Diese Funktion deaktiviert das Auswerfen eines Geräts aus dem Steckplatz und nicht das Auswerfen von Medien aus einem Gerät.) Weitere Informationen zu WDF_TRI_STATE typisierten Werten finden Sie im folgenden Abschnitt Hinweise.

EjectSupported

Ein WDF_TRI_STATE typisierter Wert, der angibt, dass das Gerät aus dem Slot ausgeworfen werden kann, wenn er auf WdfTrue festgelegt ist. (Diese Funktion ermöglicht das Auswerfen eines Geräts aus seinem Steckplatz, nicht das Auswerfen von Medien aus einem Gerät.)

Removable

Ein WDF_TRI_STATE typisierter Wert, der angibt, dass das Gerät entfernt werden kann, während das System ausgeführt wird. Wenn Entfernbar auf WdfTrue festgelegt ist und SurpriseRemovalOK auf WdfFalse festgelegt ist, sollten Benutzer das Programm "Deplug" oder "Eject Hardware" des Systems verwenden.

DockDevice

Ein WDF_TRI_STATE typisierter Wert, der angibt, wenn er auf WdfTrue festgelegt ist, dass es sich bei dem Gerät um eine Dockingstation handelt.

UniqueID

Ein WDF_TRI_STATE typisierter Wert, der angibt, dass die instance-ID des Geräts für das gesamte System eindeutig ist, wenn er auf WdfTrue festgelegt ist. Wenn UniqueID auf WdfFalse festgelegt ist, ist die instance-ID nur für den Bus des Geräts eindeutig. Weitere Informationen zu instance IDs finden Sie unter Geräteidentifikationszeichenfolgen.

SilentInstall

Ein WDF_TRI_STATE typisierter Wert, der angibt, dass Geräte-Manager während der Installation des Geräts keine Dialogfelder anzeigen sollten, wenn er auf WdfTrue festgelegt ist.

SurpriseRemovalOK

Ein WDF_TRI_STATE typisierter Wert, der angibt, dass Benutzer das Gerät entfernen können, wenn er auf WdfTrue festgelegt ist (und wenn Entfernbar auch auf WdfTrue festgelegt ist), ohne das Programm "Entstöpseln" oder "Hardware auswerfen" des Systems zu verwenden.

HardwareDisabled

Ein WDF_TRI_STATE typisierter Wert, der angibt, dass das Gerät deaktiviert ist, wenn er auf WdfTrue festgelegt ist.

NoDisplayInUI

Ein WDF_TRI_STATE typisierter Wert, der angibt, dass Geräte-Manager das Gerät nicht anzeigen soll, wenn er auf WdfTrue festgelegt ist.

Address

Eine Adresse, die angibt, wo sich das Gerät auf dem Bus befindet.

Die Interpretation dieser Zahl ist busspezifisch. Wenn die Adresse unbekannt ist oder der Bustreiber keine Adresse unterstützt, belässt der Bustreiber das Adresselement bei seinem Standardwert 0xFFFFFFFF (-1).

In der folgenden Liste werden die Informationen beschrieben, die bestimmte Bustreiber im Adresselement für ihre untergeordneten Geräte speichern:

Bus BESCHREIBUNG
1394 Gibt keine Adresse an, da die Adressen volatil sind. Standardmäßig wird 0xFFFFFFFF festgelegt.
EISA Slotnummer (0-F).
IDE Bei einem IDE-Gerät enthält die Adresse die Ziel-ID und die LUN. Bei einem IDE-Kanal ist die Adresse null oder 1 (0 = primärer Kanal und 1 = sekundärer Kanal).
Isapnp Gibt keine Adresse an. Standardmäßig wird 0xFFFFFFFF festgelegt.
PC-Karte (PCMCIA) Die Socketnummer (in der Regel 0x00 oder 0x40).
PCI Die Gerätenummer im hohen Wort und die Funktionsnummer im niedrigen Wort.
SCSI Die Ziel-ID.
USB Die Portnummer.

UINumber

Eine Zahl, die dem Gerät zugeordnet ist und in Benutzeroberflächen angezeigt werden kann. Diese Zahl ist in der Regel eine vom Benutzer wahrgenommene Slotnummer, z. B. eine Zahl, die neben dem Slot auf der Platine gedruckt wird, oder eine andere Nummer, die dem Benutzer hilft, das Gerät zu finden. Wenn UINumber unbekannt ist oder die Angabe einer Nummer dem Benutzer bei der Identifizierung des Gerätestandorts nicht helfen würde, legt der Treiber diesen Wert auf -1 fest.

Hinweise

Mehrere Member verwenden den WDF_TRI_STATE-Typ . Für diese Member gibt der Wert WdfTrue an, dass das Gerät die Funktion unterstützt, und ein Wert von WdfFalse gibt an, dass dies nicht der Fall ist. Ein Wert von WdfUseDefault gibt an, dass das Framework den Wert verwendet, den ein niedrigerer Treiber im bereitgestellten Stapel verwendet. Wenn beispielsweise ein Bustreiber WdfTrue für LockSupported angibt und der Funktionstreiber des Geräts WdfUseDefault angibt, speichert das Framework WdfTrue für die Funktion.

Die WDF_DEVICE_PNP_CAPABILITIES-Struktur wird als Eingabe für WdfDeviceSetPnpCapabilities verwendet.

Um eine WDF_DEVICE_PNP_CAPABILITIES-Struktur zu initialisieren, sollte ein Treiber WDF_DEVICE_PNP_CAPABILITIES_INIT aufrufen.

Anforderungen

Anforderung Wert
KMDF-Mindestversion 1.0
UMDF-Mindestversion 2.0
Kopfzeile wdfdevice.h (einschließen von Wdf.h)

Weitere Informationen

WdfDeviceSetPowerCapabilities

WdfPdoInitAssignRawDevice