CM_Get_Class_Registry_PropertyW-Funktion (cfgmgr32.h)
Die CM_Get_Class_Registry_Property-Funktion ruft eine Gerätesetupklasseneigenschaft ab.
Syntax
CMAPI CONFIGRET CM_Get_Class_Registry_PropertyW(
[in] LPGUID ClassGuid,
[in] ULONG ulProperty,
[out, optional] PULONG pulRegDataType,
[out] PVOID Buffer,
[in, out] PULONG pulLength,
[in] ULONG ulFlags,
[in, optional] HMACHINE hMachine
);
Parameter
[in] ClassGuid
Ein Zeiger auf die GUID, die die Gerätesetupklasse darstellt, für die eine Eigenschaft abgerufen werden soll.
[in] ulProperty
Ein Wert vom Typ ULONG, der die abzurufende Eigenschaft identifiziert. Dieser Wert muss einer der folgenden CM_CRP_Xxx-Werte sein, die in Cfgmgr32.h definiert sind:
CM_CRP_UPPERFILTERS
Stellt eine REG_MULTI_SZ-Typliste von Zeichenfolgen dar, wobei jede Zeichenfolge den Namen eines Filtertreibers auf oberster Ebene enthält, der für die Klasse registriert ist.
CM_CRP_LOWERFILTERS
Stellt eine REG_MULTI_SZ typisierte Liste von Zeichenfolgen dar, wobei jede Zeichenfolge den Namen eines Filtertreibers auf niedrigerer Ebene enthält, der für die Klasse registriert ist.
CM_CRP_SECURITY
Stellt einen Wert vom Typ REG_BINARY dar, der eine Struktur mit variabler Länge, selbstrelativer SECURITY_DESCRIPTOR enthält.
CM_CRP_SECURITY_SDS
Stellt eine Zeichenfolge vom Typ REG_SZ dar, die einen Sicherheitsdeskriptor im SDDL-Format (Security Descriptor Definition Language) enthält.
CM_CRP_DEVTYPE
Stellt einen Wert vom Typ REG_DWORD dar, der den Gerätetyp für die Klasse angibt. Weitere Informationen finden Sie unter Angeben von Gerätetypen.
CM_CRP_EXCLUSIVE
Stellt einen Wert vom Typ REG_DWORD dar, der angibt, ob Benutzer exklusiven Zugriff auf Geräte für diese Klasse erhalten können. Der zurückgegebene Wert ist 1, wenn exklusiver Zugriff zulässig ist, oder andernfalls null.
CM_CRP_CHARACTERISTICS
Stellt einen Wert vom Typ DWORD dar, der die Gerätemerkmale für die Klasse angibt. Eine Liste der Merkmaleflags finden Sie im DeviceCharacteristics-Parameter der IoCreateDevice-Routine .
[out, optional] pulRegDataType
Ein Zeiger auf eine Variable vom Typ ULONG, die die REG_Xxx-Konstante empfängt, die den Datentyp der angeforderten Eigenschaft darstellt. Die REG_Xxx-Konstanten werden in Winnt.h definiert und im Type-Member der KEY_VALUE_BASIC_INFORMATION-Struktur beschrieben. Dieser Parameter ist optional und kann auf NULL festgelegt werden.
[out] Buffer
Ein Zeiger auf einen Puffer, der die angeforderten Eigenschaftendaten empfängt. Weitere Informationen zu diesem Parameter und dem Puffergrößenparameter pulLength finden Sie im folgenden Abschnitt hinweise .
[in, out] pulLength
Ein Zeiger auf eine Variable vom Typ ULONG, deren Wert bei der Eingabe die Größe des Puffers in Bytes ist, der von Buffer bereitgestellt wird. Bei der Rückgabe legt CM_Get_Class_Registry_Property diese Variable auf die Größe der angeforderten Eigenschaft in Bytes fest.
[in] ulFlags
Nur für die interne Verwendung vorgesehen. Muss auf 0 (null) festgelegt werden.
[in, optional] hMachine
Ein Handle für einen Remotecomputer, von dem die angegebene Geräteklasseneigenschaft abgerufen werden soll. Dieser Parameter ist optional, und wenn er auf NULL festgelegt ist, wird die Eigenschaft vom lokalen Computer abgerufen.
Rückgabewert
Wenn der Vorgang erfolgreich ist, gibt CM_Get_Class_Registry_Property CR_SUCCESS zurück. Andernfalls gibt die Funktion einen der anderen CR_Xxx-status-Codes zurück, die in Cfgmgr32.h definiert sind.
Hinweise
Um die Größe einer Eigenschaft in Bytes zu bestimmen, bevor Sie versuchen, die Eigenschaft abzurufen, rufen Sie zuerst CM_Get_Class_Registry_Property auf, und geben Sie einen NULL-Pufferzeiger und einen pulLength-Wert von 0 (null) an. Als Reaktion auf einen solchen Aufruf ruft die Funktion die -Eigenschaft nicht ab, sondern legt pulLength auf die Größe der angeforderten Eigenschaft fest und gibt CR_BUFFER_SMALL zurück. Nachdem Sie die Eigenschaftsgröße abgerufen haben, rufen Sie CM_Get_Class_Registry_Property erneut auf, und geben Sie einen Pufferzeiger auf den Puffer an, um die Eigenschaftsdaten zu empfangen, und geben Sie die Eigenschaftsgröße in *pulLength an.
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Verfügbar in Microsoft Windows 2000 und höheren Versionen von Windows. |
Zielplattform | Universell |
Header | cfgmgr32.h (include Cfgmgr32.h) |
Bibliothek | Cfgmgr32.lib |
Weitere Informationen
CM_Set_Class_Registry_Property