SetupDiGetDriverInfoDetail
BOOLEAN
SetupDiGetDriverInfoDetail(
IN HDEVINFO DeviceInfoSet,
IN PSP_DEVINFO_DATA DeviceInfoData, /* optional */
IN PSP_DRVINFO_DATA DriverInfoData,
OUT PSP_DRVINFO_DETAIL_DATA DriverInfoDetailData,
/* optional */
IN DWORD DriverInfoDetailDataSize,
OUT PDWORD RequiredSize /* optional */
);
SetupDiGetDriverInfoDetail retrieves detailed information for a
specified driver.
Parameters
-
DeviceInfoSet
-
Supplies a handle to the device information set that contains a driver
information structure for which to retrieve details.
-
DeviceInfoData
-
Supplies a pointer to an SP_DEVINFO_DATA structure that contains a driver
information structure for which to retrieve details. If this parameter is not
specified, the driver referenced is a member of the global class driver list
owned by the device information set.
-
DriverInfoData
-
Supplies a pointer to an SP_DRVINFO_DATA structure that specifies the driver
for which details are to be retrieved.
-
DriverInfoDetailData
-
Supplies a pointer to an SP_DRVINFO_DETAIL_DATA structure that receives
detailed information about the specified driver. If this parameter is not
specified, DriverInfoDetailDataSize must be 0. If this parameter is
specified, the cbSize field of this structure must be set to the size,
in bytes, of the structure before calling SetupDiGetDriverInfoDetail.
-
DriverInfoDetailDataSize
-
Supplies the size, in bytes, of the DriverInfoDetailData buffer.
-
RequiredSize
-
Supplies a pointer to a variable that receives the number of bytes required to
store the detailed driver information. This value includes both the size of
the structure and the additional bytes required for the variable-length
character buffer at the end that holds the hardware ID and the compatible IDs
MULTI_SZ 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.
Comments
If the specified driver information member and the caller-supplied buffer are
both valid, this function is guaranteed to fill in all static fields in the
SP_DRVINFO_DETAIL_DATA structure and as many IDs as possible in the
variable-length buffer at the end while still maintaining MULTI_SZ format. In
this case, the function returns FALSE and a call to GetLastError
returns ERROR_INSUFFICIENT_BUFFER. If specified, RequiredSize contains
the total number of bytes required for the structure with all IDs.
See Also
SetupDiEnumDriverInfo, SetupDiGetSelectedDriver