Función SetupDiSetDeviceRegistryPropertyA (setupapi.h)
La función SetupDiSetDeviceRegistryProperty establece una propiedad de dispositivo Plug and Play para un dispositivo.
Sintaxis
WINSETUPAPI BOOL SetupDiSetDeviceRegistryPropertyA(
[in] HDEVINFO DeviceInfoSet,
[in, out] PSP_DEVINFO_DATA DeviceInfoData,
[in] DWORD Property,
[in, optional] const BYTE *PropertyBuffer,
[in] DWORD PropertyBufferSize
);
Parámetros
[in] DeviceInfoSet
Identificador del conjunto de información del dispositivo que contiene un elemento de información del dispositivo que representa el dispositivo para el que se va a establecer una propiedad de dispositivo Plug and Play.
[in, out] DeviceInfoData
Puntero a una estructura de SP_DEVINFO_DATA que especifica el elemento de información del dispositivo en DeviceInfoSet. Si se establece la propiedad ClassGuid , DeviceInfoData.ClassGuid se establece al volver a la nueva clase para el dispositivo.
[in] Property
Uno de los siguientes valores, que identifica la propiedad que se va a establecer. Para obtener descripciones de estos valores, consulte SetupDiGetDeviceRegistryProperty.
- SPDRP_CONFIGFLAGS
- SPDRP_EXCLUSIVE
- SPDRP_FRIENDLYNAME
- SPDRP_LOCATION_INFORMATION
- SPDRP_LOWERFILTERS
- SPDRP_REMOVAL_POLICY_OVERRIDE
- SPDRP_SECURITY
- SPDRP_SECURITY_SDS
- SPDRP_UI_NUMBER_DESC_FORMAT
- SPDRP_UPPERFILTERS
Nota
SPDRP_HARDWAREID o SPDRP_COMPATIBLEIDS solo se pueden usar cuando DeviceInfoData representa un dispositivo enumerado en raíz. En el caso de otros dispositivos, el controlador de bus notifica los identificadores de hardware y compatibles al enumerar un dispositivo secundario después de recibir IRP_MN_QUERY_ID.
Los valores siguientes están reservados para su uso por el sistema operativo y no se pueden usar en el parámetro Property :
- SPDRP_ADDRESS
- SPDRP_BUSNUMBER
- SPDRP_BUSTYPEGUID
- SPDRP_CHARACTERISTICS
- SPDRP_CAPABILITIES
- SPDRP_CLASS
- SPDRP_CLASSGUID
- SPDRP_DEVICE_POWER_DATA
- SPDRP_DEVICEDESC
- SPDRP_DEVTYPE
- SPDRP_DRIVER
- SPDRP_ENUMERATOR_NAME
- SPDRP_INSTALL_STATE
- SPDRP_LEGACYBUSTYPE
- SPDRP_LOCATION_PATHS
- SPDRP_MFG
- SPDRP_PHYSICAL_DEVICE_OBJECT_NAME
- SPDRP_REMOVAL_POLICY
- SPDRP_REMOVAL_POLICY_HW_DEFAULT
- SPDRP_SERVICE
- SPDRP_UI_NUMBER
[in, optional] PropertyBuffer
Puntero a un búfer que contiene los nuevos datos de la propiedad. Si se borra la propiedad , este puntero debe ser NULL y PropertyBufferSize debe ser cero.
[in] PropertyBufferSize
Tamaño, en bytes, de PropertyBuffer. Si PropertyBuffer es NULL, este campo debe ser cero.
Valor devuelto
La función devuelve TRUE si se realiza correctamente. De lo contrario, devuelve FALSE y el error registrado se puede recuperar con una llamada a GetLastError.
Comentarios
El autor de la llamada de esta función debe ser miembro del grupo Administradores.
No se puede establecer la propiedad de nombre de clase porque se basa en el GUID de clase correspondiente y se actualiza automáticamente cuando se cambia esa propiedad. Cuando cambia la propiedad ClassGUID, SetupDiSetDeviceRegistryProperty limpia automáticamente las claves de software asociadas al dispositivo.
Nota
El encabezado setupapi.h define SetupDiSetDeviceRegistryProperty como alias que selecciona automáticamente la versión ANSI o Unicode de esta función en función de la definición de la constante de preprocesador UNICODE. La combinación del uso del alias neutro de codificación con código que no es neutral de codificación puede provocar discrepancias que dan lugar a errores de compilación o en tiempo de ejecución. Para obtener más información, vea Convenciones para prototipos de función.
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible | Disponible en Microsoft Windows 2000 y versiones posteriores de Windows. |
Plataforma de destino | Escritorio |
Encabezado | setupapi.h (incluya Setupapi.h) |
Library | Setupapi.lib |
Consulte también
SetupDiGetClassRegistryProperty