Bewerken

Delen via


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