In Windows Vista and later versions of Windows, the DEVPROP_TYPE_NULL identifier represents a special base-data-type identifier that indicates that a device property exists. However, that the property has no value that is associated with the property.


Use this base-property-type identifier with the device property functions to delete the value that is associated with a device property.

If a device property function returns this base data type, the property exists, but the property has no value that is associated with it.

The DEVPROP_TYPE_NULL identifier cannot be combined with the property-data-type modifiers DEVPROP_TYPEMOD_ARRAY or DEVPROP_TYPEMOD_LIST.

Setting a Property of this Type

To set a property whose data type is DEVPROP_TYPE_NULL, call the corresponding SetupDiSet*Xxx* property function and set the function parameters as follows:

  • Set the PropertyType parameter to DEVPROP_TYPE_NULL, the PropertyBuffer parameter to NULL, and the PropertyBufferSize parameter to zero.

  • Set the other function input parameters as appropriate to set the property.

Retrieving a Property of this Type

A call to a SetupDiGet*Xxx* property function that attempts to retrieve a device property that has no value will succeed and set the *PropertyType parameter to DEVPROP_TYPE_NULL.



Devpropdef.h (include Devpropdef.h)

Send comments about this topic to Microsoft