srrestoreptapi.h 2.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879
  1. /**
  2. * This file has no copyright assigned and is placed in the Public Domain.
  3. * This file is part of the mingw-w64 runtime package.
  4. * No warranty is given; refer to the file DISCLAIMER.PD within this package.
  5. */
  6. #if !defined(_SRRESTOREPTAPI_H)
  7. #define _SRRESTOREPTAPI_H
  8. #include <_mingw_unicode.h>
  9. #define MIN_EVENT 100
  10. #define BEGIN_SYSTEM_CHANGE 100
  11. #define END_SYSTEM_CHANGE 101
  12. #define BEGIN_NESTED_SYSTEM_CHANGE 102
  13. #define END_NESTED_SYSTEM_CHANGE 103
  14. #define MAX_EVENT 103
  15. #define MIN_RPT 0
  16. #define APPLICATION_INSTALL 0
  17. #define APPLICATION_UNINSTALL 1
  18. #define DESKTOP_SETTING 2
  19. #define ACCESSIBILITY_SETTING 3
  20. #define OE_SETTING 4
  21. #define APPLICATION_RUN 5
  22. #define RESTORE 6
  23. #define CHECKPOINT 7
  24. #define WINDOWS_SHUTDOWN 8
  25. #define WINDOWS_BOOT 9
  26. #define DEVICE_DRIVER_INSTALL 10
  27. #define FIRSTRUN 11
  28. #define MODIFY_SETTINGS 12
  29. #define CANCELLED_OPERATION 13
  30. #define BACKUP_RECOVERY 14
  31. #define MAX_RPT 14
  32. #define MAX_DESC 64
  33. #define MAX_DESC_W 256
  34. #pragma pack(push,srrestoreptapi_include)
  35. #pragma pack(1)
  36. typedef struct _RESTOREPTINFOA {
  37. DWORD dwEventType;
  38. DWORD dwRestorePtType;
  39. INT64 llSequenceNumber;
  40. CHAR szDescription[MAX_DESC];
  41. } RESTOREPOINTINFOA,*PRESTOREPOINTINFOA;
  42. typedef struct _RESTOREPTINFOW {
  43. DWORD dwEventType;
  44. DWORD dwRestorePtType;
  45. INT64 llSequenceNumber;
  46. WCHAR szDescription[MAX_DESC_W];
  47. } RESTOREPOINTINFOW,*PRESTOREPOINTINFOW;
  48. typedef struct _SMGRSTATUS {
  49. DWORD nStatus;
  50. INT64 llSequenceNumber;
  51. } STATEMGRSTATUS,*PSTATEMGRSTATUS;
  52. #pragma pack(pop,srrestoreptapi_include)
  53. #ifdef __cplusplus
  54. extern "C" {
  55. #endif
  56. WINBOOL __stdcall SRSetRestorePointA(PRESTOREPOINTINFOA pRestorePtSpec,PSTATEMGRSTATUS pSMgrStatus);
  57. WINBOOL __stdcall SRSetRestorePointW(PRESTOREPOINTINFOW pRestorePtSpec,PSTATEMGRSTATUS pSMgrStatus);
  58. DWORD __stdcall SRRemoveRestorePoint(DWORD dwRPNum);
  59. #ifdef __cplusplus
  60. }
  61. #endif
  62. #define RESTOREPOINTINFO __MINGW_NAME_AW(RESTOREPOINTINFO)
  63. #define PRESTOREPOINTINFO __MINGW_NAME_AW(PRESTOREPOINTINFO)
  64. #define SRSetRestorePoint __MINGW_NAME_AW(SRSetRestorePoint)
  65. #endif