diff --git a/reactos/dll/win32/advapi32/reg/reg.c b/reactos/dll/win32/advapi32/reg/reg.c index 312fb19226f..61ecd6b870a 100644 --- a/reactos/dll/win32/advapi32/reg/reg.c +++ b/reactos/dll/win32/advapi32/reg/reg.c @@ -4732,8 +4732,21 @@ RegSaveKeyExW(HKEY hKey, LPSECURITY_ATTRIBUTES lpSecurityAttributes, DWORD Flags) { - FIXME("RegSaveKeyExW() not implemented!\n"); - return ERROR_INVALID_PARAMETER; + switch (Flags) + { + case REG_STANDARD_FORMAT: + case REG_LATEST_FORMAT: + case REG_NO_COMPRESSION: + break; + default: + return ERROR_INVALID_PARAMETER; + } + + FIXME("RegSaveKeyExW(): Flags ignored!\n"); + + return RegSaveKeyW(hKey, + lpFile, + lpSecurityAttributes); } diff --git a/reactos/include/psdk/winnt.h b/reactos/include/psdk/winnt.h index 8cd50947e28..b37d6f53f2d 100644 --- a/reactos/include/psdk/winnt.h +++ b/reactos/include/psdk/winnt.h @@ -277,6 +277,10 @@ typedef DWORD FLONG; #define SPECIFIC_RIGHTS_ALL 0xFFFF #define ACCESS_SYSTEM_SECURITY 0x1000000 +#define REG_STANDARD_FORMAT 1 +#define REG_LATEST_FORMAT 2 +#define REG_NO_COMPRESSION 4 + #ifndef WIN32_NO_STATUS #define STATUS_WAIT_0 ((DWORD)0x00000000)