SetupDiGetDeviceRegistryPropertyA-Funktion (setupapi.h)

Die SetupDiGetDeviceRegistryProperty-Funktion ruft eine angegebene Plug and Play-Geräteeigenschaft ab.

Syntax

WINSETUPAPI BOOL SetupDiGetDeviceRegistryPropertyA(
  [in]            HDEVINFO         DeviceInfoSet,
  [in]            PSP_DEVINFO_DATA DeviceInfoData,
  [in]            DWORD            Property,
  [out, optional] PDWORD           PropertyRegDataType,
  [out, optional] PBYTE            PropertyBuffer,
  [in]            DWORD            PropertyBufferSize,
  [out, optional] PDWORD           RequiredSize
);

Parameter

[in] DeviceInfoSet

Ein Handle für einen Geräteinformationssatz , der ein Geräteinformationselement enthält, das das Gerät darstellt, für das eine Plug and Play-Eigenschaft abgerufen werden soll.

[in] DeviceInfoData

Ein Zeiger auf eine SP_DEVINFO_DATA-Struktur , die das Geräteinformationselement in DeviceInfoSet angibt.

[in] Property

Einer der folgenden Werte, der die abzurufende Eigenschaft angibt:

SPDRP_ADDRESS

Die Funktion ruft die Adresse des Geräts ab.

SPDRP_BUSNUMBER

Die Funktion ruft die Busnummer des Geräts ab.

SPDRP_BUSTYPEGUID

Die Funktion ruft die GUID für den Bustyp des Geräts ab.

SPDRP_CAPABILITIES

Die Funktion ruft einen bitweisen OR der folgenden CM_DEVCAP_Xxx-Flags in einem DWORD ab. Die Gerätefunktionen, die durch diese Flags dargestellt werden, entsprechen den Gerätefunktionen, die durch die Member der DEVICE_CAPABILITIES-Struktur dargestellt werden. Die CM_DEVCAP_Xxx Konstanten werden in Cfgmgr32.h definiert.

CM_DEVCAP_Xxx Flag Entsprechendes DEVICE_CAPABILITIES Strukturelement
CM_DEVCAP_LOCKSUPPORTED LockSupported
CM_DEVCAP_EJECTSUPPORTED EjectSupported
CM_DEVCAP_REMOVABLE Abnehmbare
CM_DEVCAP_DOCKDEVICE DockGeräte
CM_DEVCAP_UNIQUEID Uniqueid
CM_DEVCAP_SILENTINSTALL SilentInstall
CM_DEVCAP_RAWDEVICEOK RawDeviceOK
CM_DEVCAP_SURPRISEREMOVALOK SurpriseRemovalOK
CM_DEVCAP_HARDWAREDISABLED HardwareDisabled
CM_DEVCAP_NONDYNAMIC Nicht Dynamisch
 

SPDRP_CHARACTERISTICS

Die Funktion ruft ein bitweises OR der Merkmale eines Geräts in einem DWORD ab. Eine Beschreibung dieser Flags, die in Wdm.h und Ntddk.h definiert sind, finden Sie im DeviceCharacteristics-Parameter der IoCreateDevice-Funktion .

SPDRP_CLASS

Die Funktion ruft eine REG_SZ Zeichenfolge ab, die die Geräteeinrichtungsklasse eines Geräts enthält.

SPDRP_CLASSGUID

Die Funktion ruft eine REG_SZ Zeichenfolge ab, die die GUID enthält, die die Geräteeinrichtungsklasse eines Geräts darstellt.

SPDRP_COMPATIBLEIDS

Die Funktion ruft eine REG_MULTI_SZ Zeichenfolge ab, die die Liste der kompatiblen IDs für ein Gerät enthält. Informationen zu kompatiblen IDs finden Sie unter Geräteidentifikationszeichenfolgen.

SPDRP_CONFIGFLAGS

Die Funktion ruft ein bitweises OR der Konfigurationsflags eines Geräts in einem DWORD-Wert ab. Die Konfigurationsflags werden durch die CONFIGFLAG_Xxx-Bitmasken dargestellt, die in Regstr.h definiert sind.

SPDRP_DEVICE_POWER_DATA

(Windows XP und höher) Die Funktion ruft eine CM_POWER_DATA-Struktur ab, die die Energieverwaltungsinformationen des Geräts enthält.

SPDRP_DEVICEDESC

Die Funktion ruft eine REG_SZ Zeichenfolge ab, die die Beschreibung eines Geräts enthält.

SPDRP_DEVTYPE

Die Funktion ruft einen DWORD-Wert ab, der den Typ des Geräts darstellt. Weitere Informationen finden Sie unter Angeben von Gerätetypen.

SPDRP_DRIVER

Die Funktion ruft eine Zeichenfolge ab, die den Softwareschlüssel des Geräts (manchmal als Treiberschlüssel bezeichnet) identifiziert. Weitere Informationen zu Treiberschlüsseln finden Sie unter Registrierungsstrukturen und Schlüssel für Geräte und Treiber.

SPDRP_ENUMERATOR_NAME

Die Funktion ruft eine REG_SZ Zeichenfolge ab, die den Namen des Enumerators des Geräts enthält.

SPDRP_EXCLUSIVE

Die Funktion ruft einen DWORD-Wert ab, der angibt, ob ein Benutzer das Gerät exklusiv nutzen kann. Der zurückgegebene Wert ist eins, wenn die exklusive Verwendung zulässig ist, oder andernfalls null. Weitere Informationen finden Sie unter IoCreateDevice.

SPDRP_FRIENDLYNAME

Die Funktion ruft eine REG_SZ Zeichenfolge ab, die den Anzeigenamen eines Geräts enthält.

SPDRP_HARDWAREID

Die Funktion ruft eine REG_MULTI_SZ Zeichenfolge ab, die die Liste der Hardware-IDs für ein Gerät enthält. Informationen zu Hardware-IDs finden Sie unter Geräteidentifikationszeichenfolgen.

SPDRP_INSTALL_STATE

(Windows XP und höher) Die Funktion ruft einen DWORD-Wert ab, der den Installationsstatus eines Geräts angibt. Der Installationszustand wird durch einen der CM_INSTALL_STATE_Xxx-Werte dargestellt, die in Cfgmgr32.h definiert sind. Die CM_INSTALL_STATE_Xxx-Werte entsprechen den DEVICE_INSTALL_STATE Enumerationswerten.

SPDRP_LEGACYBUSTYPE

Die Funktion ruft den Legacybustyp des Geräts als INTERFACE_TYPE-Wert ab (definiert in Wdm.h und Ntddk.h).

SPDRP_LOCATION_INFORMATION

Die Funktion ruft eine REG_SZ Zeichenfolge ab, die den Hardwarestandort eines Geräts enthält.

SPDRP_LOCATION_PATHS

(Windows Server 2003 und höher) Die Funktion ruft eine REG_MULTI_SZ Zeichenfolge ab, die den Standort des Geräts in der Gerätestruktur darstellt.

SPDRP_LOWERFILTERS

Die Funktion ruft eine REG_MULTI_SZ-Zeichenfolge ab, die die Namen der Treiber mit niedrigeren Filtern eines Geräts enthält.

SPDRP_MFG

Die Funktion ruft eine REG_SZ Zeichenfolge ab, die den Namen des Geräteherstellers enthält.

SPDRP_PHYSICAL_DEVICE_OBJECT_NAME

Die Funktion ruft eine REG_SZ Zeichenfolge ab, die den Namen enthält, der dem PDO des Geräts zugeordnet ist. Weitere Informationen finden Sie unter IoCreateDevice.

SPDRP_REMOVAL_POLICY

(Windows XP und höher) Die Funktion ruft die aktuelle Entfernungsrichtlinie des Geräts als DWORD ab, die einen der CM_REMOVAL_POLICY_Xxx-Werte enthält, die in Cfgmgr32.h definiert sind.

SPDRP_REMOVAL_POLICY_HW_DEFAULT

(Windows XP und höher) Die Funktion ruft die hardwarespezifische Standardentfernungsrichtlinie des Geräts als DWORD ab, die einen der in Cfgmgr32.h definierten CM_REMOVAL_POLICY_Xxx-Werte enthält.

SPDRP_REMOVAL_POLICY_OVERRIDE

(Windows XP und höher) Die Funktion ruft die Überschreibungsrichtlinie des Geräts (sofern vorhanden) aus der Registrierung als DWORD ab, die einen der in Cfgmgr32.h definierten CM_REMOVAL_POLICY_Xxx-Werte enthält.

SPDRP_SECURITY

Die Funktion ruft eine SECURITY_DESCRIPTOR-Struktur für ein Gerät ab.

SPDRP_SECURITY_SDS

Die Funktion ruft eine REG_SZ Zeichenfolge ab, die die Sicherheitsbeschreibung des Geräts enthält. Informationen zu Sicherheitsdeskriptorzeichenfolgen finden Sie unter Security Descriptor Definition Language (Windows). Informationen zum Format von Sicherheitsdeskriptorzeichenfolgen finden Sie unter Security Descriptor Definition Language (Windows).

SPDRP_SERVICE

Die Funktion ruft eine REG_SZ Zeichenfolge ab, die den Dienstnamen für ein Gerät enthält.

SPDRP_UI_NUMBER

Die Funktion ruft einen DWORD-Wert ab, der auf den Wert des UINumber-Members der DEVICE_CAPABILITIES Struktur des Geräts festgelegt ist.

SPDRP_UI_NUMBER_DESC_FORMAT

Die Funktion ruft eine Formatzeichenfolge (REG_SZ) ab, die zum Anzeigen des UINumber-Werts verwendet wird.

SPDRP_UPPERFILTERS

Die Funktion ruft eine REG_MULTI_SZ Zeichenfolge ab, die die Namen der oberen Filtertreiber eines Geräts enthält.

[out, optional] PropertyRegDataType

Ein Zeiger auf eine Variable, die den Datentyp der abgerufenen Eigenschaft empfängt. Dies ist einer der Standardmäßigen Registrierungsdatentypen. Dieser Parameter ist optional und kann NULL sein.

[out, optional] PropertyBuffer

Ein Zeiger auf einen Puffer, der die eigenschaft empfängt, die abgerufen wird. Wenn dieser Parameter auf NULL festgelegt ist und PropertyBufferSize ebenfalls auf Null festgelegt ist, gibt die Funktion die erforderliche Größe für den Puffer in RequiredSize zurück.

[in] PropertyBufferSize

Die Größe des PropertyBuffer-Puffers in Bytes.

[out, optional] RequiredSize

Ein Zeiger auf eine Variable vom Typ DWORD, die die erforderliche Größe des PropertyBuffer-Puffers in Bytes empfängt, der zum Aufnehmen der Daten für die angeforderte Eigenschaft erforderlich ist. Dieser Parameter ist optional und kann NULL sein.

Rückgabewert

SetupDiGetDeviceRegistryProperty gibt TRUE zurück, wenn der Aufruf erfolgreich war. Andernfalls wird FALSE zurückgegeben, und der protokollierte Fehler kann durch einen Aufruf von GetLastError abgerufen werden. SetupDiGetDeviceRegistryProperty gibt den ERROR_INVALID_DATA Fehlercode zurück, wenn die angeforderte Eigenschaft für ein Gerät nicht vorhanden ist oder wenn die Eigenschaftendaten ungültig sind.

Hinweise

Hinweis

Der setupapi.h-Header definiert SetupDiGetDeviceRegistryProperty als Alias, der automatisch die ANSI- oder Unicode-Version dieser Funktion basierend auf der Definition der UNICODE-Präprozessorkonstante auswählt. Das Mischen der Verwendung des codierungsneutralen Alias mit nicht codierungsneutralem Code kann zu Nichtübereinstimmungen führen, die zu Kompilierungs- oder Laufzeitfehlern führen. Weitere Informationen finden Sie unter Konventionen für Funktionsprototypen.

Anforderungen

   
Unterstützte Mindestversion (Client) Verfügbar in Microsoft Windows 2000 und höheren Versionen von Windows.
Zielplattform DesktopZu universellen, rufen Sie CM_Get_DevNode_Registry_Property auf
Kopfzeile setupapi.h (einschließlich Setupapi.h)
Bibliothek Setupapi.lib

Weitere Informationen

IoGetDeviceProperty

SetupDiGetClassRegistryProperty

SetupDiSetClassRegistryProperty

SetupDiSetDeviceRegistryProperty