Leaked source code of windows server 2003
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

120 lines
9.3 KiB

  1. /****************************************************************************\
  2. STATES.H / Factory Mode (FACTORY.EXE)
  3. Microsoft Confidential
  4. Copyright (c) Microsoft Corporation 2001
  5. All rights reserved
  6. Header file that contains all the states Factory uses.
  7. 05/2001 - Jason Cohen (JCOHEN)
  8. Added this new header file for factory. Moved states from WINBOM.C
  9. and now these are included in FACTORY.C.
  10. Adding in OOBE states at this time as well.
  11. \****************************************************************************/
  12. //
  13. // Global Variable(s):
  14. //
  15. STATES g_FactoryStates[] =
  16. {
  17. // This must always be the first state.
  18. //
  19. { stateStart, NULL, NEVER, 0, FLAG_STATE_NONE },
  20. // All these following states happen before the logon.
  21. //
  22. // ISSUE-2002/02/26-acosma - Remove this state. It doesn't do anything. Calling some very empty functions.
  23. //
  24. { stateSlpFiles, SlpFiles, NEVER, 0, FLAG_STATE_ONETIME },
  25. { stateExtendPart, ExtendPart, DisplayExtendPart, IDS_STATE_EXTENDPART, FLAG_STATE_ONETIME },
  26. { stateResetSource, ResetSource, DisplayResetSource, IDS_STATE_RESETSOURCE, FLAG_STATE_ONETIME },
  27. { stateTestCert, TestCert, DisplayTestCert, IDS_STATE_TESTCERT, FLAG_STATE_ONETIME },
  28. { stateComputerName, ComputerName, DisplayComputerName, IDS_STATE_COMPUTERNAME, FLAG_STATE_ONETIME },
  29. { stateUpdateDrivers, UpdateDrivers, DisplayUpdateDrivers, IDS_STATE_UPDATEDRIVERS, FLAG_STATE_ONETIME },
  30. { stateNormalPnP, NormalPnP, ALWAYS, IDS_STATE_NORMALPNP, FLAG_STATE_NONE },
  31. { stateSetDisplay, SetDisplay, ALWAYS, IDS_STATE_SETDISPLAY, FLAG_STATE_NONE },
  32. { stateShellSettings, ShellSettings, DisplayShellSettings, IDS_STATE_SHELLSETTINGS, FLAG_STATE_ONETIME },
  33. { stateAutoLogon, AutoLogon, DisplayAutoLogon, IDS_STATE_AUTOLOGON, FLAG_STATE_NONE },
  34. // This must be the first state after logon.
  35. //
  36. { stateLogon, NULL, ALWAYS, IDS_STATE_LOGON, FLAG_STATE_NONE },
  37. // All these following states happen after the logon.
  38. //
  39. { stateWaitPnP2, WaitPnP, DisplayWaitPnP, IDS_STATE_WAITPNP, FLAG_STATE_NONE },
  40. { stateInstallDrivers, InstallDrivers, DisplayInstallDrivers, IDS_STATE_INSTALLDRIVERS, FLAG_STATE_ONETIME },
  41. { stateSetDisplay2, SetDisplay, NEVER, IDS_STATE_SETDISPLAY, FLAG_STATE_ONETIME },
  42. { stateOptShell, OptimizeShell, DisplayOptimizeShell, IDS_STATE_OPTSHELL, FLAG_STATE_NONE },
  43. { stateSetFontOptions, SetFontOptions, DisplaySetFontOptions, IDS_STATE_SETFONTOPTIONS, FLAG_STATE_ONETIME },
  44. { stateShellSettings2, ShellSettings2, DisplayShellSettings, IDS_STATE_SHELLSETTINGS, FLAG_STATE_ONETIME },
  45. { stateSetPowerOptions, SetPowerOptions, DisplaySetPowerOptions, IDS_STATE_SETPOWEROPTIONS, FLAG_STATE_ONETIME },
  46. { stateHomeNet, HomeNet, DisplayHomeNet, IDS_STATE_HOMENET, FLAG_STATE_ONETIME },
  47. { stateUserIdent, UserIdent, DisplayUserIdent, IDS_STATE_USERIDENT, FLAG_STATE_ONETIME | FLAG_STATE_NOTONSERVER },
  48. { stateInfInstall, InfInstall, DisplayInfInstall, IDS_STATE_INFINSTALL, FLAG_STATE_ONETIME },
  49. { statePidPopulate, PidPopulate, NEVER, 0, FLAG_STATE_ONETIME },
  50. { stateOCManager, OCManager, DisplayOCManager, IDS_STATE_OCMGR, FLAG_STATE_ONETIME },
  51. { stateOemRunOnce, OemRunOnce, DisplayOemRunOnce, IDS_STATE_OEMRUNONCE, FLAG_STATE_NONE },
  52. { stateStartMenuMFU, StartMenuMFU, DisplayStartMenuMFU, IDS_STATE_STARTMENUMFU, FLAG_STATE_ONETIME },
  53. { stateSetDefaultApps, SetDefaultApps, ALWAYS, IDS_STATE_SETDEFAULTAPPS, FLAG_STATE_NOTONSERVER },
  54. { stateOemData, OemData, DisplayOemData, IDS_STATE_OEMFOLDER, FLAG_STATE_ONETIME },
  55. { stateOemRun, OemRun, DisplayOemRun, IDS_STATE_OEMRUN, FLAG_STATE_NONE },
  56. { stateWaitPnP, WaitPnP, DisplayWaitPnP, IDS_STATE_WAITPNP, FLAG_STATE_NONE },
  57. { stateReseal, Reseal, DisplayReseal, IDS_STATE_RESEAL, FLAG_STATE_NONE },
  58. // This must be the last state.
  59. //
  60. { stateFinish, NULL, NEVER, 0, FLAG_STATE_NONE },
  61. };
  62. STATES g_MiniNtStates[] =
  63. {
  64. // This must always be the first state.
  65. //
  66. { stateStart, NULL, NEVER, 0, FLAG_STATE_NONE },
  67. { stateSetDisplay, SetDisplay, ALWAYS, IDS_STATE_SETDISPLAY, FLAG_STATE_NONE },
  68. { statePartitionFormat, PartitionFormat, DisplayPartitionFormat, IDS_STATE_PARTITIONFORMAT, FLAG_STATE_NONE },
  69. { stateCreatePageFile, CreatePageFile, DisplayCreatePageFile, IDS_STATE_CREATEPAGEFILE, FLAG_STATE_NONE },
  70. { stateWinpeNet, WinpeNet, DisplayWinpeNet, IDS_STATE_WINPENET, FLAG_STATE_NONE },
  71. { stateOemRunOnce, OemRunOnce, DisplayOemRunOnce, IDS_STATE_OEMRUNONCE, FLAG_STATE_NONE },
  72. { stateOemRun, OemRun, DisplayOemRun, IDS_STATE_OEMRUN, FLAG_STATE_NONE },
  73. { stateCopyFiles, CopyFiles, DisplayCopyFiles, IDS_STATE_COPYFILES, FLAG_STATE_NONE },
  74. { stateInfInstall, InfInstall, DisplayInfInstall, IDS_STATE_INFINSTALL, FLAG_STATE_NONE },
  75. { stateWinpeReboot, WinpeReboot, ALWAYS, IDS_STATE_WINPEREBOOT, FLAG_STATE_NONE },
  76. // This must be the last state.
  77. //
  78. { stateFinish, NULL, NEVER, 0, FLAG_STATE_NONE },
  79. };
  80. STATES g_OobeStates[] =
  81. {
  82. // This must always be the first state.
  83. //
  84. { stateStart, NULL, NEVER, 0, FLAG_STATE_NONE },
  85. { stateExtendPart, ExtendPart, NEVER, IDS_STATE_EXTENDPART, FLAG_STATE_ONETIME },
  86. { stateResetSource, ResetSource, NEVER, IDS_STATE_RESETSOURCE, FLAG_STATE_ONETIME },
  87. { stateTestCert, TestCert, NEVER, IDS_STATE_TESTCERT, FLAG_STATE_ONETIME },
  88. { stateInstallDrivers, InstallDrivers, NEVER, IDS_STATE_INSTALLDRIVERS, FLAG_STATE_ONETIME },
  89. { stateSetDisplay, SetDisplay, NEVER, IDS_STATE_SETDISPLAY, FLAG_STATE_ONETIME },
  90. { stateOptShell, OptimizeShell, NEVER, IDS_STATE_OPTSHELL, FLAG_STATE_NONE },
  91. { stateShellSettings, ShellSettings, NEVER, IDS_STATE_SHELLSETTINGS, FLAG_STATE_ONETIME },
  92. { stateSetPowerOptions, SetPowerOptions, NEVER, IDS_STATE_SETPOWEROPTIONS, FLAG_STATE_ONETIME },
  93. { statePidPopulate, PidPopulate, NEVER, 0, FLAG_STATE_ONETIME },
  94. { stateOCManager, OCManager, NEVER, IDS_STATE_OCMGR, FLAG_STATE_ONETIME },
  95. // This must be the last state.
  96. //
  97. { stateFinish, NULL, NEVER, 0, FLAG_STATE_NONE },
  98. };