2.4 Do not require a reboot inappropriately
In Windows XP, very few installation situations require a reboot. Reboots are unwelcome by customers and, in some situations, can make deploying applications difficult. The application must not require or suggest an unnecessary reboot during or after installation.
Some situations that require a reboot
? Installing a Windows Service Pack or authorized system redistributable may require a reboot.
? Installing a Graphical Identification and Authentication dynamic link library (GINA) requires a reboot. The GINA is a replaceable DLL component that is loaded by Winlogon. The GINA implements the authentication policy of the interactive logon model, and it is expected to perform all identification and authentication user interactions. For example, replacement GINA DLLs can implement smart card, retinal scan, or other authentication mechanisms in place of the standard Windows XP user name and password authentication. For more information on GINA, see 1.5 Support Fast User Switching.
Situations that do not require a reboot
? DLL registration.
? Updating a service component. If necessary, you must warn the user that certain services will be stopped while they are updated.
? Replacing an existing file that is in use by an application. You must give the user information about any open applications that have loaded the resource files you are updating so that the user can shut down those files and allow file replacement to occur without a reboot.
Also, for many components, you should install the components side-by-side or use MoveFileEx with the delay until reboot option to avoid this situation.
If you do require a reboot, you must prompt users and allow them the option of deferring the reboot.
You must also document the specific reason for the reboot, even if it is one of the specific items listed in this section.
Test Cases ? 2.4
As defined in ?Designed for Microsoft Windows XP? Application Test Framework:
TC2.4.1 Does the installation finish without requiring a reboot?
TC2.4.2 Can all Test Framework testing be completed without application requiring a reboot?