SetupDiSetDeviceInterfacePropertyW-Funktion (setupapi.h)

Die SetupDiSetDeviceInterfaceProperty-Funktion legt eine Geräteeigenschaft einer Geräteschnittstelle fest.

Syntax

WINSETUPAPI BOOL SetupDiSetDeviceInterfacePropertyW(
  [in]           HDEVINFO                  DeviceInfoSet,
  [in]           PSP_DEVICE_INTERFACE_DATA DeviceInterfaceData,
  [in]           const DEVPROPKEY          *PropertyKey,
  [in]           DEVPROPTYPE               PropertyType,
  [in, optional] const PBYTE               PropertyBuffer,
  [in]           DWORD                     PropertyBufferSize,
  [in]           DWORD                     Flags
);

Parameter

[in] DeviceInfoSet

Ein Handle für einen Geräteinformationssatz , der die Geräteschnittstelle enthält, für die eine Geräteschnittstelleneigenschaft festgelegt werden soll.

[in] DeviceInterfaceData

Ein Zeiger auf eine SP_DEVICE_INTERFACE_DATA Struktur, die die Geräteschnittstelle darstellt, für die eine Geräteschnittstelleneigenschaft festgelegt werden soll.

[in] PropertyKey

Ein Zeiger auf eine DEVPROPKEY-Struktur , die den Geräteeigenschaftsschlüssel der festzulegenden Geräteschnittstelleneigenschaft darstellt.

[in] PropertyType

Ein DEVPROPTYPE-typisierter Wert, der den Eigenschaftsdatentypbezeichner der festzulegenden Geräteschnittstelleneigenschaft darstellt. Weitere Informationen zum Bezeichner für Eigenschaftsdatentyp finden Sie weiter unten in diesem Thema im Abschnitt Hinweise .

[in, optional] PropertyBuffer

Ein Zeiger auf einen Puffer, der den Wert der Geräteschnittstelleneigenschaft enthält. Wenn entweder die Eigenschaft oder der Schnittstellenwert gelöscht wird, muss dieser Zeiger auf NULL festgelegt werden, und PropertyBufferSize muss auf 0 festgelegt werden. Weitere Informationen zu Eigenschaftenwertdaten finden Sie weiter unten in diesem Thema im Abschnitt Hinweise .

[in] PropertyBufferSize

Die Größe des PropertyBuffer-Puffers in Bytes. Die Größe des Eigenschaftspuffers muss mit dem Eigenschaftsdatentypbezeichner übereinstimmen, der von PropertyType bereitgestellt wird. Wenn PropertyBuffer auf NULL festgelegt ist, muss PropertyBufferSize auf 0 festgelegt werden.

[in] Flags

Muss auf 0 festgelegt werden.

Rückgabewert

SetupDiSetDeviceInterfaceProperty gibt TRUE zurück, wenn es erfolgreich ist. Andernfalls gibt diese Funktion FALSE zurück, und der protokollierte Fehler kann durch Aufrufen von GetLastError abgerufen werden.

Die folgende Tabelle enthält einige der häufigeren Fehlercodes, die diese Funktion möglicherweise protokolliert.

Rückgabecode Beschreibung
ERROR_INVALID_FLAGS
Der Wert von Flags ist nicht 0.
ERROR_INVALID_HANDLE
Der von DevInfoSet angegebene Geräteinformationssatz ist ungültig.
ERROR_INVALID_PARAMETER
Ein bereitgestellter Parameter ist ungültig. Eine Möglichkeit besteht darin, dass die von DeviceInterfaceData angegebene Geräteschnittstelle ungültig ist.
ERROR_INVALID_REG_PROPERTY
Der von PropertyKey bereitgestellte Eigenschaftenschlüssel ist ungültig.
ERROR_INVALID_DATA
Ein nicht angegebener Datenwert war ungültig. Dieser Fehler kann protokolliert werden, wenn entweder der symbolische Linkname der Geräteschnittstelle ungültig oder der Eigenschaftsdatentypbezeichner ungültig ist.
ERROR_INVALID_USER_BUFFER
Ein Benutzerpuffer ist ungültig. Eine Möglichkeit besteht darin, dass PropertyBufferNULL und PropertBufferSize nicht 0 ist.
ERROR_NO_SUCH_DEVICE_INTERFACE
Die von DeviceInterfaceData angegebene Geräteschnittstelle ist nicht vorhanden.
ERROR_INSUFFICIENT_BUFFER
Ein interner Datenpuffer, der an einen Systemaufruf übergeben wurde, war zu klein.
ERROR_NOT_ENOUGH_MEMORY
Es war nicht genügend Systemspeicher verfügbar, um den Vorgang abzuschließen.
ERROR_NOT_FOUND
Ein nicht angegebenes internes Element wurde nicht gefunden. Eine Möglichkeit besteht darin, dass eine zu löschende Eigenschaft nicht vorhanden ist.
ERROR_ACCESS_DENIED
Der Aufrufer verfügt nicht über Administratorrechte.

Hinweise

SetupDiSetDeviceInterfaceProperty ist Teil des einheitlichen Geräteeigenschaftenmodells.

SetupAPI unterstützt nur eine Unicode-Version von SetupDiSetDeviceInterfaceProperty.

Ein Aufrufer von SetupDiSetDeviceInterfaceProperty muss Mitglied der Gruppe Administratoren sein, um eine Geräteschnittstelleneigenschaft festzulegen.

SetupDiSetDeviceInterfaceProperty erzwingt Anforderungen für den Bezeichner property-data-type und den Eigenschaftswert.

Um die Geräteeigenschaftenschlüssel abzurufen, die die Geräteeigenschaften darstellen, die für eine Geräteschnittstelle festgelegt sind, rufen Sie SetupDiGetDeviceInterfacePropertyKeys auf.

Um eine Geräteschnittstelleneigenschaft abzurufen, rufen Sie SetupDiGetDeviceInterfaceProperty auf.

Anforderungen

   
Unterstützte Mindestversion (Client) Verfügbar in Windows Vista und späteren Windows-Versionen.
Zielplattform Desktop Für universellen Aufruf CM_Set_Device_Interface_Property
Kopfzeile setupapi.h (einschließlich Setupapi.h)
Bibliothek Setupapi.lib

Weitere Informationen

SetupDiGetDeviceInterfaceProperty

SetupDiGetDeviceInterfacePropertyKeys