/** * This file has no copyright assigned and is placed in the Public Domain. * This file is part of the mingw-w64 runtime package. * No warranty is given; refer to the file DISCLAIMER.PD within this package. */ #if !defined(_SRRESTOREPTAPI_H) #define _SRRESTOREPTAPI_H #include <_mingw_unicode.h> #define MIN_EVENT 100 #define BEGIN_SYSTEM_CHANGE 100 #define END_SYSTEM_CHANGE 101 #define BEGIN_NESTED_SYSTEM_CHANGE 102 #define END_NESTED_SYSTEM_CHANGE 103 #define MAX_EVENT 103 #define MIN_RPT 0 #define APPLICATION_INSTALL 0 #define APPLICATION_UNINSTALL 1 #define DESKTOP_SETTING 2 #define ACCESSIBILITY_SETTING 3 #define OE_SETTING 4 #define APPLICATION_RUN 5 #define RESTORE 6 #define CHECKPOINT 7 #define WINDOWS_SHUTDOWN 8 #define WINDOWS_BOOT 9 #define DEVICE_DRIVER_INSTALL 10 #define FIRSTRUN 11 #define MODIFY_SETTINGS 12 #define CANCELLED_OPERATION 13 #define BACKUP_RECOVERY 14 #define MAX_RPT 14 #define MAX_DESC 64 #define MAX_DESC_W 256 #pragma pack(push,srrestoreptapi_include) #pragma pack(1) typedef struct _RESTOREPTINFOA { DWORD dwEventType; DWORD dwRestorePtType; INT64 llSequenceNumber; CHAR szDescription[MAX_DESC]; } RESTOREPOINTINFOA,*PRESTOREPOINTINFOA; typedef struct _RESTOREPTINFOW { DWORD dwEventType; DWORD dwRestorePtType; INT64 llSequenceNumber; WCHAR szDescription[MAX_DESC_W]; } RESTOREPOINTINFOW,*PRESTOREPOINTINFOW; typedef struct _SMGRSTATUS { DWORD nStatus; INT64 llSequenceNumber; } STATEMGRSTATUS,*PSTATEMGRSTATUS; #pragma pack(pop,srrestoreptapi_include) #ifdef __cplusplus extern "C" { #endif WINBOOL __stdcall SRSetRestorePointA(PRESTOREPOINTINFOA pRestorePtSpec,PSTATEMGRSTATUS pSMgrStatus); WINBOOL __stdcall SRSetRestorePointW(PRESTOREPOINTINFOW pRestorePtSpec,PSTATEMGRSTATUS pSMgrStatus); DWORD __stdcall SRRemoveRestorePoint(DWORD dwRPNum); #ifdef __cplusplus } #endif #define RESTOREPOINTINFO __MINGW_NAME_AW(RESTOREPOINTINFO) #define PRESTOREPOINTINFO __MINGW_NAME_AW(PRESTOREPOINTINFO) #define SRSetRestorePoint __MINGW_NAME_AW(SRSetRestorePoint) #endif