Función IoSetDeviceInterfacePropertyData (wdm.h)

La rutina IoSetDeviceInterfacePropertyData modifica el valor actual de una propiedad de interfaz de dispositivo.

Sintaxis

NTSTATUS IoSetDeviceInterfacePropertyData(
  [in]           PUNICODE_STRING  SymbolicLinkName,
  [in]           const DEVPROPKEY *PropertyKey,
  [in]           LCID             Lcid,
  [in]           ULONG            Flags,
  [in]           DEVPROPTYPE      Type,
  [in]           ULONG            Size,
  [in, optional] PVOID            Data
);

Parámetros

[in] SymbolicLinkName

Puntero a una cadena que identifica la instancia de la interfaz de dispositivo. Esta cadena se obtuvo de una llamada anterior a la rutina IoGetDeviceInterfaces, IoGetDeviceInterfaceAlias o IoRegisterDeviceInterface .

[in] PropertyKey

Puntero a una estructura DEVPROPKEY que contiene la clave de propiedad de la interfaz de dispositivo.

[in] Lcid

Especifica un identificador de configuración regional. Establezca este parámetro en un valor LCID específico del idioma o en LOCALE_NEUTRAL. El LOCALE_NEUTRAL LCID especifica que la propiedad es independiente del idioma (es decir, no específica de ningún idioma). No establezca este parámetro en LOCALE_SYSTEM_DEFAULT o LOCALE_USER_DEFAULT. Para obtener más información sobre los valores lcID específicos del lenguaje, vea LCID Structure.

[in] Flags

Establezca este parámetro en PLUGPLAY_PROPERTY_PERSISTENT si el valor de propiedad establecido por esta rutina debe persistir en los reinicios del equipo. De lo contrario, establezca Marcas en cero.

[in] Type

Establezca este parámetro en el valor DEVPROPTYPE que especifica el tipo de los datos proporcionados en el búfer de datos .

[in] Size

Especifica el tamaño, en bytes, del búfer al que apunta Data .

[in, optional] Data

Puntero a los datos de propiedad de la interfaz de dispositivo. Establezca este parámetro en NULL para eliminar la propiedad especificada. Si Data no es NULL, la rutina almacena una copia interna del valor de propiedad. El búfer al que apunta Data no necesita permanecer válido después de que se devuelva la llamada.

Valor devuelto

IoSetDeviceInterfacePropertyData devuelve STATUS_SUCCESS si la llamada se realizó correctamente. Entre los posibles valores devueltos de error se incluyen los siguientes códigos de estado.

Código devuelto Descripción
STATUS_UNSUCCESSFUL El valor LCID especificado no es válido.
STATUS_NOT_IMPLEMENTED No se admite la propiedad especificada.

Comentarios

Los controladores en modo kernel usan la rutina IoSetDeviceInterfacePropertyData para modificar las propiedades de la interfaz de dispositivo definidas como parte del modelo de propiedades de dispositivo unificado. Para obtener más información sobre las propiedades de la interfaz de dispositivo, consulte Propiedades del dispositivo.

Los controladores pueden usar la rutina IoGetDeviceInterfacePropertyData para obtener el valor actual de una propiedad de interfaz de dispositivo.

Los autores de llamadas de IoSetDeviceInterfacePropertyData deben ejecutarse en IRQL <= APC_LEVEL en el contexto de un subproceso del sistema.

Requisitos

Requisito Value
Cliente mínimo compatible Disponible para Windows 8 y versiones posteriores de Windows.
Plataforma de destino Universal
Encabezado wdm.h (incluya Wdm.h, Ntddk.h, Ntifs.h)
Library NtosKrnl.lib
Archivo DLL NtosKrnl.exe
IRQL <= APC_LEVEL

Consulte también

DEVPROPKEY

DEVPROPTYPE

IoGetDeviceInterfacePropertyData