DIF_NEWDEVICEWIZARD_PRESELECT

A DIF_NEWDEVICEWIZARD_PRESELECT request allows an installer to supply wizard pages that Windows displays to the user before it displays the select-driver page. This request is only used during manual installation of non-PnP devices.

When Sent

After the user has selected the class for the device but before Windows displays the "Select a Device Driver" page.

Who Handles

Class Co-installer

Can handle

Device Co-installer

Does not handle

Class Installer

Can handle

 

Installer Input

DeviceInfoSet

Supplies a handle to the device information set that contains the device.

DeviceInfoData

Supplies a pointer to an SP_DEVINFO_DATA structure that identifies the device in the device information set.

Device Installation Parameters

There are device installation parameters (SP_DEVINSTALL_PARAMS) associated with the DeviceInfoData.

Class Installation Parameters

An SP_NEWDEVICEWIZARD_DATA structure is associated with the DeviceInfoData.

Installer Output

Device Installation Parameters

An installer can modify the flags in the device installation parameters. Windows does not check the flags upon completion of this DIF request. However, it checks them later in the installation process.

Class Installation Parameters

An installer can modify the SP_NEWDEVICEWIZARD_DATA to supply custom page(s).

Installer Return Value

If a co-installer does not handle this DIF request it returns NO_ERROR from its preprocessing pass. If a co-installer handles this request it can return NO_ERROR, ERROR_DI_POSTPROCESSING_REQUIRED, or a Win32 error code.

A class installer returns NO_ERROR if it successfully supplies page(s). Otherwise, a class installer returns ERROR_DI_DO_DEFAULT or a Win32 error code.

Default DIF Code Handler

None

Installer Operation

A DIF_NEWDEVICEWIZARD_PRESELECT request allows an installer to supply wizard pages that Windows displays to the user before it displays the select-driver page. This request is only used during manual installation of non-PnP devices.

If an installer adds custom preselect page(s), the installer should first check whether NumDynamicPages in the class install parameters has reached MAX_INSTALLWIZARD_DYNAPAGES.

A co-installer can add custom pages in its preprocessing pass and/or in its postprocessing pass. If it adds page(s) in its preprocessing pass, those pages are displayed before any page(s) supplied by the class installer.

If one or more installers add custom preselect pages, Windows displays the pages before the "Select a Device Driver" page. However, if the user presses "Back" on the select-driver page, Windows skips the custom preselect pages and goes back to the "Hardware Type" class-selection page.

An installer should supply a Wizard 97 header title and a header subtitle in the PROPSHEETPAGE structure for a custom wizard page. An installer should not replace the system-supplied wizard title. See the Microsoft Windows SDK for documentation of the PROPSHEETPAGE structure and for more information about property pages.

For more information about DIF codes, see Handling DIF Codes.

Requirements

Version

Supported in Microsoft Windows 2000 and later versions of Windows.

Header

Setupapi.h (include Setupapi.h)

See also

DIF_NEWDEVICEWIZARD_PREANALYZE
DIF_NEWDEVICEWIZARD_POSTANALYZE
DIF_NEWDEVICEWIZARD_SELECT
SP_DEVINFO_DATA
SP_DEVINSTALL_PARAMS
SP_NEWDEVICEWIZARD_DATA

 

 

Send comments about this topic to Microsoft

Show: