Training
Module
Troubleshoot device driver failures - Training
This module focuses on the role of device drivers and troubleshooting problems that pertain to them.
This browser is no longer supported.
Upgrade to Microsoft Edge to take advantage of the latest features, security updates, and technical support.
This section contains reference topics for the Setupapi.h header.
Topic | Description |
---|---|
SetupDiAskForOEMDisk |
The SetupDiAskForOEMDisk function displays a dialog that asks the user for the path of an OEM installation disk. |
SetupDiBuildClassInfoList |
The SetupDiBuildClassInfoList function returns a list of setup class GUIDs that identify the classes that are installed on a local computer. |
SetupDiBuildClassInfoListEx |
The SetupDiBuildClassInfoListEx function returns a list of setup class GUIDs that includes every class installed on the local system or a remote system. |
SetupDiBuildDriverInfoList |
The SetupDiBuildDriverInfoList function builds a list of drivers that is associated with a specific device or with the global class driver list for a device information set. |
SetupDiCallClassInstaller |
The SetupDiCallClassInstaller function calls the appropriate class installer, and any registered co-installers, with the specified installation request (DIF code). |
SetupDiCancelDriverInfoSearch |
The SetupDiCancelDriverInfoSearch function cancels a driver list search that is currently in progress in a different thread. |
SetupDiChangeState |
The SetupDiChangeState function is the default handler for the DIF_PROPERTYCHANGE installation request. |
SetupDiClassGuidsFromName |
The SetupDiClassGuidsFromName function retrieves the GUID(s) associated with the specified class name. This list is built based on the classes currently installed on the system. |
SetupDiClassGuidsFromNameEx |
The SetupDiClassGuidsFromNameEx function retrieves the GUIDs associated with the specified class name. This resulting list contains the classes currently installed on a local or remote computer. |
SetupDiClassNameFromGuid |
The SetupDiClassNameFromGuid function retrieves the class name associated with a class GUID. |
SetupDiClassNameFromGuidEx |
The SetupDiClassNameFromGuidEx function retrieves the class name associated with a class GUID. The class can be installed on a local or remote computer. |
SetupDiCreateDeviceInfo |
The SetupDiCreateDeviceInfo function creates a new device information element and adds it as a new member to the specified device information set. |
SetupDiCreateDeviceInfoList |
The SetupDiCreateDeviceInfoList function creates an empty device information set and optionally associates the set with a device setup class and a top-level window. |
SetupDiCreateDeviceInfoListEx |
The SetupDiCreateDeviceInfoList function creates an empty device information set on a remote or a local computer and optionally associates the set with a device setup class . |
SetupDiCreateDeviceInterface |
The SetupDiCreateDeviceInterface function registers a device interface on a local system or a remote system. |
SetupDiCreateDeviceInterfaceRegKey |
The SetupDiCreateDeviceInterfaceRegKey function creates a registry key for storing information about a device interface and returns a handle to the key. |
SetupDiCreateDevRegKey |
The SetupDiCreateDevRegKey function creates a registry key for device-specific configuration information and returns a handle to the key. |
SetupDiDeleteDeviceInfo |
The SetupDiDeleteDeviceInfo function deletes a device information element from a device information set. This function does not delete the actual device. |
SetupDiDeleteDeviceInterfaceData |
The SetupDiDeleteDeviceInterfaceData function deletes a device interface from a device information set. |
SetupDiDeleteDeviceInterfaceRegKey |
The SetupDiDeleteDeviceInterfaceRegKey function deletes the registry subkey that is used by applications and drivers to store interface-specific information. |
SetupDiDeleteDevRegKey |
The SetupDiDeleteDevRegKey function deletes specified user-accessible registry keys that are associated with a device information element. |
SetupDiDestroyClassImageList |
The SetupDiDestroyClassImageList function destroys a class image list that was built by a call to SetupDiGetClassImageList or SetupDiGetClassImageListEx. |
SetupDiDestroyDeviceInfoList |
The SetupDiDestroyDeviceInfoList function deletes a device information set and frees all associated memory. |
SetupDiDestroyDriverInfoList |
The SetupDiDestroyDriverInfoList function deletes a driver list. |
SetupDiDrawMiniIcon |
The SetupDiDrawMiniIcon function draws the specified mini-icon at the location requested. |
SetupDiEnumDeviceInfo |
The SetupDiEnumDeviceInfo function returns a SP_DEVINFO_DATA structure that specifies a device information element in a device information set. |
SetupDiEnumDeviceInterfaces |
The SetupDiEnumDeviceInterfaces function enumerates the device interfaces that are contained in a device information set. |
SetupDiEnumDriverInfo |
The SetupDiEnumDriverInfo function enumerates the members of a driver list. |
SetupDiFinishInstallAction |
The SetupDiFinishInstallAction function is the default handler for the DIF_FINISHINSTALL_ACTION request. |
SetupDiGetActualModelsSection |
The SetupDiGetActualModelsSection function retrieves the appropriate decorated INF Models section to use when installing a device from a device INF file. |
SetupDiGetActualSectionToInstall |
The SetupDiGetActualSectionToInstall function retrieves the appropriate INF DDInstall section to use when installing a device from a device INF file on a local computer. |
SetupDiGetActualSectionToInstallEx |
The SetupDiGetActualSectionToInstallEx function retrieves the name of the INF DDInstall section that installs a device for a specified operating system and processor architecture. |
SetupDiGetClassBitmapIndex |
The SetupDiGetClassBitmapIndex function retrieves the index of the mini-icon supplied for the specified class. |
SetupDiGetClassDescription |
The SetupDiGetClassDescription function retrieves the class description associated with the specified setup class GUID. |
SetupDiGetClassDescriptionEx |
The SetupDiGetClassDescriptionEx function retrieves the description of a setup class installed on a local or remote computer. |
SetupDiGetClassDevPropertySheets |
The SetupDiGetClassDevPropertySheets function retrieves handles to the property sheets of a device information element or of the device setup class of a device information set. |
SetupDiGetClassDevs |
The SetupDiGetClassDevs function returns a handle to a device information set that contains requested device information elements for a local computer. |
SetupDiGetClassDevsEx |
The SetupDiGetClassDevsEx function returns a handle to a device information set that contains requested device information elements for a local or a remote computer. |
SetupDiGetClassImageIndex |
The SetupDiGetClassImageIndex function retrieves the index within the class image list of a specified class. |
SetupDiGetClassImageList |
The SetupDiGetClassImageList function builds an image list that contains bitmaps for every installed class and returns the list in a data structure. |
SetupDiGetClassImageListEx |
The SetupDiGetClassImageListEx function builds an image list of bitmaps for every class installed on a local or remote system. |
SetupDiGetClassInstallParams |
The SetupDiGetClassInstallParams function retrieves class installation parameters for a device information set or a particular device information element. |
SetupDiGetClassProperty |
The SetupDiGetClassProperty function retrieves a device property that is set for a device setup class or a device interface class. |
SetupDiGetClassPropertyEx |
The SetupDiGetClassPropertyEx function retrieves a class property for a device setup class or a device interface class on a local or remote computer. |
SetupDiGetClassPropertyKeys |
The SetupDiGetClassPropertyKeys function retrieves an array of the device property keys that represent the device properties that are set for a device setup class or a device interface class. |
SetupDiGetClassPropertyKeysEx |
The SetupDiGetClassPropertyKeysEx function retrieves an array of the device property keys that represent the device properties that are set for a device setup class or a device interface class on a local or a remote computer. |
SetupDiGetClassRegistryProperty |
The SetupDiGetClassRegistryProperty function retrieves a property for a specified device setup class from the registry. |
SetupDiGetCustomDeviceProperty |
The SetupDiGetCustomDeviceProperty function retrieves a specified custom device property from the registry. |
SetupDiGetDeviceInfoListClass |
The SetupDiGetDeviceInfoListClass function retrieves the GUID for the device setup class associated with a device information set if the set has an associated class. |
SetupDiGetDeviceInfoListDetail |
The SetupDiGetDeviceInfoListDetail function retrieves information associated with a device information set including the class GUID, remote computer handle, and remote computer name. |
SetupDiGetDeviceInstallParams |
The SetupDiGetDeviceInstallParams function retrieves device installation parameters for a device information set or a particular device information element. |
SetupDiGetDeviceInstanceId |
The SetupDiGetDeviceInstanceId function retrieves the device instance ID that is associated with a device information element. |
SetupDiGetDeviceInterfaceAlias |
The SetupDiGetDeviceInterfaceAlias function returns an alias of a specified device interface. |
SetupDiGetDeviceInterfaceDetail |
The SetupDiGetDeviceInterfaceDetail function returns details about a device interface. |
SetupDiGetDeviceInterfaceProperty |
The SetupDiGetDeviceInterfaceProperty function retrieves a device property that is set for a device interface. |
SetupDiGetDeviceInterfacePropertyKeys |
The SetupDiGetDeviceInterfacePropertyKeys function retrieves an array of device property keys that represent the device properties that are set for a device interface. |
SetupDiGetDeviceProperty |
The SetupDiGetDeviceProperty function retrieves a device instance property. |
SetupDiGetDevicePropertyKeys |
The SetupDiGetDevicePropertyKeys function retrieves an array of the device property keys that represent the device properties that are set for a device instance. |
SetupDiGetDeviceRegistryProperty |
The SetupDiGetDeviceRegistryProperty function retrieves a specified Plug and Play device property. |
SetupDiGetDriverInfoDetail |
The SetupDiGetDriverInfoDetail function retrieves driver information detail for a device information set or a particular device information element in the device information set. |
SetupDiGetDriverInstallParams |
The SetupDiGetDriverInstallParams function retrieves driver installation parameters for a device information set or a particular device information element. |
SetupDiGetHwProfileFriendlyName |
The SetupDiGetHwProfileFriendlyName function retrieves the friendly name associated with a hardware profile ID. |
SetupDiGetHwProfileFriendlyNameEx |
The SetupDiGetHwProfileFriendlyNameEx function retrieves the friendly name associated with a hardware profile ID on a local or remote computer. |
SetupDiGetHwProfileList |
The SetupDiGetHwProfileList function retrieves a list of all currently defined hardware profile IDs. |
SetupDiGetHwProfileListEx |
The SetupDiGetHwProfileListEx function retrieves a list of all currently defined hardware profile IDs on a local or remote computer. |
SetupDiGetINFClass |
The SetupDiGetINFClass function returns the class of a specified device INF file. |
SetupDiGetSelectedDevice |
The SetupDiGetSelectedDevice function retrieves the selected device information element in a device information set. |
SetupDiGetSelectedDriver |
The SetupDiGetSelectedDriver function retrieves the selected driver for a device information set or a particular device information element. |
SetupDiInstallClass |
The SetupDiInstallClass function installs the ClassInstall32 section of the specified INF file. |
SetupDiInstallClassEx |
The SetupDiInstallClassEx function installs a class installer or an interface class. |
SetupDiInstallDevice |
The SetupDiInstallDevice function is the default handler for the DIF_INSTALLDEVICE installation request. |
SetupDiInstallDeviceInterfaces |
The SetupDiInstallDeviceInterfaces function is the default handler for the DIF_INSTALLINTERFACES installation request. |
SetupDiInstallDriverFiles |
The SetupDiInstallDriverFiles function is the default handler for the DIF_INSTALLDEVICEFILES installation request. |
SetupDiLoadClassIcon |
The SetupDiLoadClassIcon function loads both the large and mini-icon for the specified class. |
SetupDiLoadDeviceIcon |
The SetupDiLoadDeviceIcon function retrieves an icon for a specified device. |
SetupDiOpenClassRegKey |
The SetupDiOpenClassRegKey function opens the setup class registry key or a specific class's subkey. |
SetupDiOpenClassRegKeyEx |
The SetupDiOpenClassRegKeyEx function opens the device setup class registry key, the device interface class registry key, or a specific class's subkey. This function opens the specified key on the local computer or on a remote computer. |
SetupDiOpenDeviceInfo |
The SetupDiOpenDeviceInfo function adds a device information element for a device instance to a device information set, if one does not already exist in the device information set, and retrieves information that identifies the device information element for the device instance in the device information set. |
SetupDiOpenDeviceInterface |
The SetupDiOpenDeviceInterface function retrieves information about a device interface and adds the interface to the specified device information set for a local system or a remote system. |
SetupDiOpenDeviceInterfaceRegKey |
The SetupDiOpenDeviceInterfaceRegKey function opens the registry subkey that is used by applications and drivers to store information that is specific to a device interface. |
SetupDiOpenDevRegKey |
The SetupDiOpenDevRegKey function opens a registry key for device-specific configuration information. |
SetupDiRegisterCoDeviceInstallers |
The SetupDiRegisterCoDeviceInstallers function is the default handler for DIF_REGISTER_COINSTALLERS. |
SetupDiRegisterDeviceInfo |
The SetupDiRegisterDeviceInfo function is the default handler for the DIF_REGISTERDEVICE request. |
SetupDiRemoveDevice |
The SetupDiRemoveDevice function is the default handler for the DIF_REMOVE installation request. |
SetupDiRemoveDeviceInterface |
The SetupDiRemoveDeviceInterface function removes a registered device interface from the system. |
SetupDiRestartDevices |
The SetupDiRestartDevices function restarts a specified device or, if necessary, restarts all devices that are operated by the same function and filter drivers that operate the specified device. |
SetupDiSelectBestCompatDrv |
The SetupDiSelectBestCompatDrv function is the default handler for the DIF_SELECTBESTCOMPATDRV installation request. |
SetupDiSelectDevice |
The SetupDiSelectDevice function is the default handler for the DIF_SELECTDEVICE request. |
SetupDiSelectOEMDrv |
The SetupDiSelectOEMDrv function selects a driver for a device information set or a particular device information element that uses an OEM path supplied by the user. |
SetupDiSetClassInstallParams |
The SetupDiSetClassInstallParams function sets or clears class install parameters for a device information set or a particular device information element. |
SetupDiSetClassProperty |
The SetupDiSetClassProperty function sets a class property for a device setup class or a device interface class. |
SetupDiSetClassPropertyEx |
The SetupDiSetClassPropertyEx function sets a device property for a device setup class or a device interface class on a local or remote computer. |
SetupDiSetClassRegistryProperty |
The SetupDiSetClassRegistryProperty function sets a specified device class property in the registry. |
SetupDiSetDeviceInstallParams |
The SetupDiSetDeviceInstallParams function sets device installation parameters for a device information set or a particular device information element. |
SetupDiSetDeviceInterfaceDefault |
The SetupDiSetDeviceInterfaceDefault function sets a device interface as the default interface for a device interface class. |
SetupDiSetDeviceInterfaceProperty |
The SetupDiSetDeviceInterfaceProperty function sets a device property of a device interface. |
SetupDiSetDeviceProperty |
The SetupDiSetDeviceProperty function sets a device instance property. |
SetupDiSetDeviceRegistryProperty |
The SetupDiSetDeviceRegistryProperty function sets a Plug and Play device property for a device. |
SetupDiSetDriverInstallParams |
The SetupDiSetDriverInstallParams function sets driver installation parameters for a driver information element. |
SetupDiSetSelectedDevice |
The SetupDiSetSelectedDevice function sets a device information element as the selected member of a device information set. This function is typically used by an installation wizard. |
SetupDiSetSelectedDriver |
The SetupDiSetSelectedDriver function sets, or resets, the selected driver for a device information element or the selected class driver for a device information set. |
SetupDiUnremoveDevice |
The SetupDiUnremoveDevice function is the default handler for the DIF_UNREMOVE installation request. |
SetupGetInfDriverStoreLocation |
The SetupGetInfDriverStoreLocation function retrieves the fully qualified file name (directory path and file name) of an INF file in the driver store that corresponds to a specified INF file in the system INF file directory or a specified INF file in the driver store. |
SetupGetInfPublishedName |
The SetupGetInfPublishedName function retrieves the fully qualified file name (directory path and file name) of an INF file in the system INF file directory that corresponds to a specified INF file in the driver store or a specified INF file in the system INF file directory. |
SetupGetNonInteractiveMode |
The SetupGetNonInteractiveMode function returns the value of a SetupAPI non-interactive flag that indicates whether the caller's process can interact with a user through user interface components, such as dialog boxes. |
SetupGetThreadLogToken |
The SetupGetThreadLogToken function retrieves the log token for the thread from which this function was called. |
SetupSetNonInteractiveMode |
The SetupSetNonInteractiveMode function sets a non-interactive SetupAPI flag that determines whether SetupAPI can interact with a user in the caller's context. |
SetupSetThreadLogToken |
The SetupSetThreadLogToken function sets the log context, as represented by a log token, for the thread from which this function was called. A subsequent call to SetupGetThreadLogToken made within the same thread retrieves the log token that was most recently set for the thread. |
SetupWriteTextLog |
The SetupWriteTextLog function writes a log entry in a SetupAPI text log. |
SetupWriteTextLogError |
The SetupWriteTextLogError function writes information about a SetupAPI-specific error or a Win32 system error to a SetupAPI text log. |
SetupWriteTextLogInfLine |
The SetupWriteTextLogInfLine function writes a log entry in a SetupAPI text log that contains the text of a specified INF file line. |
SP_ADDPROPERTYPAGE_DATA |
An installer uses an SP_ADDPROPERTYPAGE_DATA structure to supply custom property pages for a device when it handles a DIF_ADDPROPERTYPAGE_ADVANCED request. |
SP_ALTPLATFORM_INFO |
An SP_ALTPLATFORM_INFO structure specifies, for a given computer, the version of the operating system and the computer's processor architecture. |
SP_CLASSIMAGELIST_DATA |
An SP_CLASSIMAGELIST_DATA structure describes a class image list. |
SP_CLASSINSTALL_HEADER |
An SP_CLASSINSTALL_HEADER is the first member of any class install parameters structure. It contains the device installation request code that defines the format of the rest of the install parameters structure. |
SP_DETECTDEVICE_PARAMS |
An SP_DETECTDEVICE_PARAMS structure corresponds to a DIF_DETECT installation request. |
SP_DEVICE_INTERFACE_DATA |
An SP_DEVICE_INTERFACE_DATA structure defines a device interface in a device information set. |
SP_DEVICE_INTERFACE_DETAIL_DATA |
An SP_DEVICE_INTERFACE_DETAIL_DATA structure contains the path for a device interface. |
SP_DEVINFO_DATA |
An SP_DEVINFO_DATA structure defines a device instance that is a member of a device information set. |
SP_DEVINFO_LIST_DETAIL_DATA |
An SP_DEVINFO_LIST_DETAIL_DATA structure contains information about a device information set, such as its associated setup class GUID (if it has an associated setup class). |
SP_DEVINSTALL_PARAMS |
An SP_DEVINSTALL_PARAMS structure contains device installation parameters associated with a particular device information element or associated globally with a device information set. |
SP_DRVINFO_DATA |
An SP_DRVINFO_DATA structure contains information about a driver. This structure is a member of a driver information list that can be associated with a particular device instance or globally with a device information set. |
SP_DRVINFO_DETAIL_DATA |
An SP_DRVINFO_DETAIL_DATA structure contains detailed information about a particular driver information structure. |
SP_DRVINSTALL_PARAMS |
An SP_DRVINSTALL_PARAMS structure contains driver installation parameters associated with a particular driver information element. |
SP_NEWDEVICEWIZARD_DATA |
An SP_NEWDEVICEWIZARD_DATA structure is used by installers to extend the operation of the hardware installation wizard by adding custom pages. It is used with DIF_NEWDEVICEWIZARD_XXX installation requests. |
SP_POWERMESSAGEWAKE_PARAMS |
An SP_POWERMESSAGEWAKE_PARAMS structure corresponds to a DIF_POWERMESSAGEWAKE installation request. |
SP_PROPCHANGE_PARAMS |
An SP_PROPCHANGE_PARAMS structure corresponds to a DIF_PROPERTYCHANGE installation request. |
SP_PROPSHEETPAGE_REQUEST |
An SP_PROPSHEETPAGE_REQUEST structure can be passed as the first parameter (lpv) to the ExtensionPropSheetPageProc entry point in the SetupAPI DLL. ExtensionPropSheetPageProc is used to retrieve a handle to a specified property sheet page. For information about ExtensionPropSheetPageProc and related functions, see the Microsoft Windows SDK documentation. |
SP_REMOVEDEVICE_PARAMS |
An SP_REMOVEDEVICE_PARAMS structure corresponds to the DIF_REMOVE installation request. |
SP_SELECTDEVICE_PARAMS |
An SP_SELECTDEVICE_PARAMS structure corresponds to a DIF_SELECTDEVICE installation request. |
SP_TROUBLESHOOTER_PARAMS |
An SP_TROUBLESHOOTER_PARAMS structure corresponds to a DIF_TROUBLESHOOTER installation request. |
SP_UNREMOVEDEVICE_PARAMS |
An SP_UNREMOVEDEVICE_PARAMS structure corresponds to a DIF_UNREMOVE installation request. |
Training
Module
Troubleshoot device driver failures - Training
This module focuses on the role of device drivers and troubleshooting problems that pertain to them.