SetupDiGetHwProfileList

BOOLEAN
SetupDiGetHwProfileList
OUT PDWORD HwProfileList,
IN DWORD HwProfileListSize,
OUT PDWORD RequiredSize,
OUT PDWORD CurrentlyActiveIndex    /* optional */
);

SetupDiGetHwProfileList retrieves a list of all currently defined hardware profile IDs.

Parameters

HwProfileList

Supplies a pointer to an array to receive the list of currently defined hardware profile IDs.

HwProfileListSize

Supplies the size, in bytes, of the HwProfileList buffer.

RequiredSize

Supplies a pointer to a variable that receives the number of hardware profiles currently defined. If the number is larger than HwProfileListSize, the list is truncated to fit the array size. The value returned in RequiredSize indicates the array size required to store the entire list of hardware profiles. In this case, the function fails and a call to GetLastError returns ERROR_INSUFFICIENT_BUFFER.

CurrentlyActiveIndex

Supplies a pointer to a variable that receives the index within the returned HwProfileList of the currently active hardware profile.

Return Value

The function returns TRUE if it is successful. Otherwise it returns FALSE and the logged error can be retrieved with a call to GetLastError.

See Also

SetupDiCreateDevRegKey, SetupDiOpenDevRegKey