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