Source code of Windows XP (NT5)
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.

93 lines
2.3 KiB

  1. #ifndef _SETUPKEY_H_
  2. #define _SETUPKEY_H_
  3. //////////////////////////////////////////////////////////////////////////////
  4. //
  5. // Copyright (c) 2000 Microsoft Corporation
  6. //
  7. // Module: setupkey.h
  8. //
  9. // Author: Dan Elliott
  10. //
  11. // Abstract: Declaration of the CSetupKey object. This object provides methods
  12. // for accessing values under HKLM\System\Setup.
  13. //
  14. // Environment:
  15. // Neptune
  16. //
  17. // Revision History:
  18. // 00/08/08 dane Created.
  19. //
  20. //////////////////////////////////////////////////////////////////////////////
  21. #include <appdefs.h>
  22. #define REGSTR_PATH_SETUPKEY REGSTR_PATH_SETUP REGSTR_KEY_SETUP
  23. #define REGSTR_PATH_SYSTEMSETUPKEY L"System\\Setup"
  24. #define REGSTR_VALUE_CMDLINE L"CmdLine"
  25. #define REGSTR_VALUE_SETUPTYPE L"SetupType"
  26. #define REGSTR_VALUE_MINISETUPINPROGRESS L"MiniSetupInProgress"
  27. #define REGSTR_VALUE_SHUTDOWNREQUIRED L"SetupShutdownRequired"
  28. //////////////////////////////////////////////////////////////////////////////
  29. //
  30. // CSetupKey
  31. //
  32. class CSetupKey
  33. {
  34. public: // operations
  35. CSetupKey( );
  36. ~CSetupKey( );
  37. LRESULT set_CommandLine(LPCWSTR szCmdLine);
  38. LRESULT get_CommandLine(LPWSTR szCmdLine, DWORD cchCmdLine);
  39. LRESULT set_SetupType(DWORD dwSetupType);
  40. LRESULT get_SetupType(DWORD* pdwSetupType);
  41. LRESULT set_MiniSetupInProgress(BOOL fInProgress);
  42. LRESULT get_MiniSetupInProgress(BOOL* pfInProgress);
  43. LRESULT set_OobeInProgress(BOOL fInProgress);
  44. LRESULT get_OobeInProgress(BOOL* pfInProgress);
  45. LRESULT set_ShutdownAction(OOBE_SHUTDOWN_ACTION OobeShutdownAction);
  46. LRESULT get_ShutdownAction(OOBE_SHUTDOWN_ACTION* pOobeShutdownAction);
  47. BOOL
  48. IsValid( ) const
  49. {
  50. return (NULL != m_hkey);
  51. } // IsValid
  52. protected: // operations
  53. protected: // data
  54. private: // operations
  55. // Explicitly disallow copy constructor and assignment operator.
  56. //
  57. CSetupKey(
  58. const CSetupKey& rhs
  59. );
  60. CSetupKey&
  61. operator=(
  62. const CSetupKey& rhs
  63. );
  64. private: // data
  65. // Handle to HKLM\System\Setup
  66. //
  67. HKEY m_hkey;
  68. }; // class CSetupKey
  69. #endif // _SETUPKEY_H_
  70. //
  71. ///// End of file: setupkey.h ////////////////////////////////////////////////