SetupDiBuildClassInfoList

BOOLEAN
SetupDiBuildClassInfoList(
IN DWORD Flags,
OUT LPGUID ClassGuidList,
IN DWORD ClassGuidListSize,
OUT PDWORD RequiredSize
);

SetupDiBuildClassInfoList returns a list of class GUIDs that includes every class installed on the system.

Parameters

Flags

Flags used to control exclusion of classes from the list. If no flags are specified, all classes are included in the list. Can be a combination of the following values:

DIBCI_NOINSTALLCLASS

Exclude a class if it has the NoInstallClass value entry in its registry key.

DIBCI_NODISPLAYCLASS

Exclude a class if it has the NoDisplayClass value entry in its registry key.

ClassGuidList

Supplies a pointer to a buffer that receives a list of class GUIDs.

ClassGuidListSize

Supplies the number of GUIDs in the ClassGuildList array.

RequiredSize

Supplies a pointer to a variable that receives the number of GUIDs returned. If this number is greater than the size of the ClassGuidList, the number indicates how large the ClassGuidList array must be in order to contain the list.

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

SetupDiGetClassDescription, SetupDiGetINFClass