| 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 |  | 
 
 
 
 
 | 9 | #include <_mingw_unicode.h> | 
 
 
 
 
 | 10 |  | 
 
 
 
 
 | 11 | #define MIN_EVENT 100 | 
 
 
 
 
 | 12 | #define BEGIN_SYSTEM_CHANGE 100 | 
 
 
 
 
 | 13 | #define END_SYSTEM_CHANGE 101 | 
 
 
 
 
 | 14 | #define BEGIN_NESTED_SYSTEM_CHANGE 102 | 
 
 
 
 
 | 15 | #define END_NESTED_SYSTEM_CHANGE 103 | 
 
 
 
 
 | 16 | #define MAX_EVENT 103 | 
 
 
 
 
 | 17 |  | 
 
 
 
 
 | 18 | #define MIN_RPT 0 | 
 
 
 
 
 | 19 | #define APPLICATION_INSTALL 0 | 
 
 
 
 
 | 20 | #define APPLICATION_UNINSTALL 1 | 
 
 
 
 
 | 21 | #define DESKTOP_SETTING 2 | 
 
 
 
 
 | 22 | #define ACCESSIBILITY_SETTING 3 | 
 
 
 
 
 | 23 | #define OE_SETTING 4 | 
 
 
 
 
 | 24 | #define APPLICATION_RUN 5 | 
 
 
 
 
 | 25 | #define RESTORE 6 | 
 
 
 
 
 | 26 | #define CHECKPOINT 7 | 
 
 
 
 
 | 27 | #define WINDOWS_SHUTDOWN 8 | 
 
 
 
 
 | 28 | #define WINDOWS_BOOT 9 | 
 
 
 
 
 | 29 | #define DEVICE_DRIVER_INSTALL 10 | 
 
 
 
 
 | 30 | #define FIRSTRUN 11 | 
 
 
 
 
 | 31 | #define MODIFY_SETTINGS 12 | 
 
 
 
 
 | 32 | #define CANCELLED_OPERATION 13 | 
 
 
 
 
 | 33 | #define BACKUP_RECOVERY 14 | 
 
 
 
 
 | 34 | #define MAX_RPT 14 | 
 
 
 
 
 | 35 |  | 
 
 
 
 
 | 36 | #define MAX_DESC 64 | 
 
 
 
 
 | 37 | #define MAX_DESC_W 256 | 
 
 
 
 
 | 38 |  | 
 
 
 
 
 | 39 | #pragma pack(push,srrestoreptapi_include) | 
 
 
 
 
 | 40 | #pragma pack(1) | 
 
 
 
 
 | 41 |  | 
 
 
 
 
 | 42 | typedef struct _RESTOREPTINFOA { | 
 
 
 
 
 | 43 | DWORD dwEventType; | 
 
 
 
 
 | 44 | DWORD dwRestorePtType; | 
 
 
 
 
 | 45 | INT64 llSequenceNumber; | 
 
 
 
 
 | 46 | CHAR szDescription[MAX_DESC]; | 
 
 
 
 
 | 47 | } RESTOREPOINTINFOA,*PRESTOREPOINTINFOA; | 
 
 
 
 
 | 48 |  | 
 
 
 
 
 | 49 | typedef struct _RESTOREPTINFOW { | 
 
 
 
 
 | 50 | DWORD dwEventType; | 
 
 
 
 
 | 51 | DWORD dwRestorePtType; | 
 
 
 
 
 | 52 | INT64 llSequenceNumber; | 
 
 
 
 
 | 53 | WCHAR szDescription[MAX_DESC_W]; | 
 
 
 
 
 | 54 | } RESTOREPOINTINFOW,*PRESTOREPOINTINFOW; | 
 
 
 
 
 | 55 |  | 
 
 
 
 
 | 56 | typedef struct _SMGRSTATUS { | 
 
 
 
 
 | 57 | DWORD nStatus; | 
 
 
 
 
 | 58 | INT64 llSequenceNumber; | 
 
 
 
 
 | 59 | } STATEMGRSTATUS,*PSTATEMGRSTATUS; | 
 
 
 
 
 | 60 |  | 
 
 
 
 
 | 61 | #pragma pack(pop,srrestoreptapi_include) | 
 
 
 
 
 | 62 |  | 
 
 
 
 
 | 63 | #ifdef __cplusplus | 
 
 
 
 
 | 64 | extern "C" { | 
 
 
 
 
 | 65 | #endif | 
 
 
 
 
 | 66 |  | 
 
 
 
 
 | 67 | WINBOOL __stdcall SRSetRestorePointA(PRESTOREPOINTINFOA pRestorePtSpec,PSTATEMGRSTATUS pSMgrStatus); | 
 
 
 
 
 | 68 | WINBOOL __stdcall SRSetRestorePointW(PRESTOREPOINTINFOW pRestorePtSpec,PSTATEMGRSTATUS pSMgrStatus); | 
 
 
 
 
 | 69 | DWORD __stdcall SRRemoveRestorePoint(DWORD dwRPNum); | 
 
 
 
 
 | 70 |  | 
 
 
 
 
 | 71 | #ifdef __cplusplus | 
 
 
 
 
 | 72 | } | 
 
 
 
 
 | 73 | #endif | 
 
 
 
 
 | 74 |  | 
 
 
 
 
 | 75 | #define RESTOREPOINTINFO __MINGW_NAME_AW(RESTOREPOINTINFO) | 
 
 
 
 
 | 76 | #define PRESTOREPOINTINFO __MINGW_NAME_AW(PRESTOREPOINTINFO) | 
 
 
 
 
 | 77 | #define SRSetRestorePoint __MINGW_NAME_AW(SRSetRestorePoint) | 
 
 
 
 
 | 78 |  | 
 
 
 
 
 | 79 | #endif |