All admins have had server startup tasks that were very sequence driven. My most frequent offender was any service that needed a database to connect to on the same server.
While we could get crafty with scripts or running applications outside of the Windows service environment, we now have a built-in option for Windows Servers to introduce a second tier of automatic startup.
Windows Server 2008, Windows Vista, and Windows 7 have the Automatic (Delayed Start) option for service startup. For my example of an application that needs a database available for correct operation, this can make the sequencing easier. If the database server is configured for the traditional automatic startup, the application would be configured for the new delayed start configuration.
The Delayed Start configuration operates to ease the strain of the boot process; it can also be a boon to administrators who wish to configure applications for tiered startup for sequencing control. The Delayed Start is configured for a service in a familiar fashion. Figure A shows a service configured for Delayed Start.
Figure A
Besides the interface, you can configure services for delayed automatic startup in the registry with use of the DelayedAutoStart Dword Key. This doesn't enforce that all of the standard automatic services are running, simply that the delayed startup services will be sent a much lower priority.
This TechNet blog outlines how to configure Delayed Start for Windows-based services.
Note: Editing the registry is risky, so be sure you have a verified backup before saving any changes.