OSDN Git Service

Update registry management API, per issue [#2262].
authorSebastián Puebla <spuebla@users.sourceforge.net>
Wed, 20 Dec 2017 22:25:54 +0000 (22:25 +0000)
committerSebastián Puebla <spuebla@users.sourceforge.net>
Wed, 20 Dec 2017 22:25:54 +0000 (22:25 +0000)
w32api/ChangeLog
w32api/include/winreg.h
w32api/lib/advapi32.def
w32api/lib/kernel32.def

index 3ed58a1..c0ef29d 100644 (file)
@@ -1,3 +1,54 @@
+2017-12-20  Sebastián Puebla  <spuebla@users.sourceforge.net>
+
+       Update registry management API, per issue [#2262].
+
+       * include/winreg.h: Merge changes from 4.1-dev branch.
+       (REG_LATEST_FORMAT, REG_NO_COMPRESSION, REG_OPTION_BACKUP_RESTORE)
+       (REG_STANDARD_FORMAT, RRF_RT_ANY, RRF_RT_DWORD, RRF_RT_QWORD)
+       (RRF_RT_REG_BINARY, RRF_RT_REG_DWORD, RRF_RT_REG_EXPAND_SZ)
+       (RRF_RT_REG_MULTI_SZ, RRF_RT_REG_NONE, RRF_RT_REG_QWORD, RRF_RT_REG_SZ)
+       (RRF_NOEXPAND, RRF_SUBKEY_WOW6464KEY, RRF_SUBKEY_WOW6432KEY)
+       (RRF_ZEROONFAILURE): New manifest constants; define them.
+       (RegDisablePredefinedCache, RegOpenCurrentUser, RegOpenUserClassesRoot)
+       (RegOverridePredefKey): Add previously omitted function prototypes.
+       [_WIN32_WINNT >= _WIN32_WINNT_WINXP] (RegSaveKeyEx): Define...
+       [!defined UNICODE] (__AW): ...mapping it for SBCS/MBCS case, or...
+       [defined UNICODE] (__AW): ...for UTF-16LE case to either one of...
+       (RegSaveKeyExA, RegSaveKeyExW): ...these, respectively, and...
+       [_WIN32_WINNT >= _WIN32_WINNT_WINXP]: ...declare function prototypes.
+       [_WIN32_WINNT >= _WIN32_WINNT_WS03] (RegDisableReflectionKey)
+       (RegEnableReflectionKey, RegQueryReflectionKey): Declare prototypes.
+       [_WIN32_WINNT >= _WIN32_WINNT_VISTA] (RegCopyTreeA, RegCopyTreeW)
+       (RegCreateKeyTransactedA, RegCreateKeyTransactedW)
+       (RegDeleteKeyTransactedA, RegDeleteKeyTransactedW)
+       (RegDeleteKeyValueA, RegDeleteKeyValueW)
+       (RegDeleteTreeA, RegDeleteTreeW, RegDisablePredefinedCacheEx)
+       (RegGetValueA, RegGetValueW, RegLoadMUIStringA, RegLoadMUIStringW)
+       (RegOpenKeyTransactedA, RegOpenKeyTransactedW)
+       (RegSetKeyValueA, RegSetKeyValueW): Declare prototypes.
+       [_WIN32_WINNT >= _WIN32_WINNT_VISTA] (RegCopyTree)
+       (RegCreateKeyTransacted, RegDeleteKeyTransacted, RegDeleteKeyValue)
+       (RegDeleteTree, RegGetValue, RegLoadMUIString, RegOpenKeyTransacted)
+       (RegSetKeyValue): Define, mapping each to its respective function...
+       [!defined UNICODE] (__AW): ...for the SBCS/MBCS case, or...
+       [defined UNICODE] (__AW): ...for the UTF-16LE case.
+
+       * lib/kernel32.def (RegDeleteTreeA@8, RegDeleteTreeW@8)
+       (RegDisablePredefinedCacheEx@0, RegGetValueA@28, RegGetValueW@28)
+       (RegLoadMUIStringA@28, RegLoadMUIStringW@28, RegSaveKeyExA@16)
+       (RegSaveKeyExW@16): Remove them; relocate them to...
+       * lib/advapi32.def (RegDeleteTreeA@8, RegDeleteTreeW@8)
+       (RegDisablePredefinedCacheEx@0, RegGetValueA@28, RegGetValueW@28)
+       (RegLoadMUIStringA@28, RegLoadMUIStringW@28, RegSaveKeyExA@16)
+       (RegSaveKeyExW@16): ...their correct location, here.
+       (RegCopyTreeA@12, RegCopyTreeW@12, RegQueryReflectionKey@8)
+       (RegCreateKeyTransactedA@44, RegCreateKeyTransactedW@44)
+       (RegDeleteKeyTransactedA@24, RegDeleteKeyTransactedW@24)
+       (RegDeleteKeyValueA@12, RegDeleteKeyValueW@12)
+       (RegDisableReflectionKey@4, RegEnableReflectionKey@4)
+       (RegOpenKeyTransactedA@28, RegOpenKeyTransactedW@28)
+       (RegSetKeyValueA@24, RegSetKeyValueW@24): Add these.
+
 2017-12-16  Keith Marshall  <keith@users.osdn.me>
 
        Provide default definition for _WIN32_IE feature test macro.
index 81aebba..48927cf 100644 (file)
@@ -1,8 +1,30 @@
+/**
+ * @file winreg.h
+ * Copyright 2012, 2013 MinGW.org project
+ *
+ * Permission is hereby granted, free of charge, to any person obtaining a
+ * copy of this software and associated documentation files (the "Software"),
+ * to deal in the Software without restriction, including without limitation
+ * the rights to use, copy, modify, merge, publish, distribute, sublicense,
+ * and/or sell copies of the Software, and to permit persons to whom the
+ * Software is furnished to do so, subject to the following conditions:
+ *
+ * The above copyright notice and this permission notice (including the next
+ * paragraph) shall be included in all copies or substantial portions of the
+ * Software.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+ * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
+ * DEALINGS IN THE SOFTWARE.
+ */
 #ifndef _WINREG_H
-#define _WINREG_H
-#if __GNUC__ >= 3
 #pragma GCC system_header
-#endif
+#define _WINREG_H
+#include <_mingw.h>
 
 #ifndef WINADVAPI
 #define WINADVAPI
@@ -11,6 +33,9 @@
 #ifdef __cplusplus
 extern "C" {
 #endif
+
+#include <reason.h>
+
 #define HKEY_CLASSES_ROOT      ((HKEY)0x80000000)
 #define HKEY_CURRENT_USER      ((HKEY)0x80000001)
 #define HKEY_LOCAL_MACHINE     ((HKEY)0x80000002)
@@ -20,6 +45,8 @@ extern "C" {
 #define HKEY_DYN_DATA  ((HKEY)0x80000006)
 #define REG_OPTION_VOLATILE 1
 #define REG_OPTION_NON_VOLATILE 0
+/* https://msdn.microsoft.com/en-us/library/aa965882%28v=vs.85%29.aspx */
+#define REG_OPTION_BACKUP_RESTORE 4
 #define REG_CREATED_NEW_KEY 1
 #define REG_OPENED_EXISTING_KEY 2
 #define REG_NONE 0
@@ -40,6 +67,25 @@ extern "C" {
 #define REG_NOTIFY_CHANGE_ATTRIBUTES 2
 #define REG_NOTIFY_CHANGE_LAST_SET 4
 #define REG_NOTIFY_CHANGE_SECURITY 8
+/* https://msdn.microsoft.com/en-us/library/ms724868%28v=vs.85%29.aspx */
+#define RRF_RT_REG_NONE 0x00000001
+#define RRF_RT_REG_SZ 0x00000002
+#define RRF_RT_REG_EXPAND_SZ 0x00000004
+#define RRF_RT_REG_BINARY 0x00000008
+#define RRF_RT_REG_DWORD 0x00000010
+#define RRF_RT_DWORD 0x00000018
+#define RRF_RT_REG_MULTI_SZ 0x00000020
+#define RRF_RT_REG_QWORD 0x00000040
+#define RRF_RT_QWORD 0x00000048
+#define RRF_RT_ANY 0x0000ffff
+#define RRF_SUBKEY_WOW6464KEY 0x00010000
+#define RRF_SUBKEY_WOW6432KEY 0x00020000
+#define RRF_NOEXPAND 0x10000000
+#define RRF_ZEROONFAILURE 0x20000000
+/* https://msdn.microsoft.com/en-us/library/ms724919%28v=vs.85%29.aspx */
+#define REG_STANDARD_FORMAT 1
+#define REG_LATEST_FORMAT 2
+#define REG_NO_COMPRESSION 4
 
 #ifndef RC_INVOKED
 typedef ACCESS_MASK REGSAM;
@@ -68,12 +114,11 @@ WINADVAPI LONG WINAPI RegCreateKeyExW(HKEY,LPCWSTR,DWORD,LPWSTR,DWORD,REGSAM,LPS
 WINADVAPI LONG WINAPI RegCreateKeyW(HKEY,LPCWSTR,PHKEY);
 WINADVAPI LONG WINAPI RegDeleteKeyA(HKEY,LPCSTR);
 WINADVAPI LONG WINAPI RegDeleteKeyW(HKEY,LPCWSTR);
-#if (WINVER >= 0x0502)
-WINADVAPI LONG WINAPI RegDeleteKeyExA(HKEY,LPCSTR,REGSAM,DWORD);
-WINADVAPI LONG WINAPI RegDeleteKeyExW(HKEY,LPCWSTR,REGSAM,DWORD);
-#endif
+
 WINADVAPI LONG WINAPI RegDeleteValueA(HKEY,LPCSTR);
 WINADVAPI LONG WINAPI RegDeleteValueW(HKEY,LPCWSTR);
+/* https://msdn.microsoft.com/en-us/library/ms724854%28v=vs.85%29.aspx */
+WINADVAPI LONG WINAPI RegDisablePredefinedCache(void);
 WINADVAPI LONG WINAPI RegEnumKeyA(HKEY,DWORD,LPSTR,DWORD);
 WINADVAPI LONG WINAPI RegEnumKeyW(HKEY,DWORD,LPWSTR,DWORD);
 WINADVAPI LONG WINAPI RegEnumKeyExA(HKEY,DWORD,LPSTR,PDWORD,PDWORD,LPSTR,PDWORD,PFILETIME);
@@ -85,10 +130,16 @@ WINADVAPI LONG WINAPI RegGetKeySecurity(HKEY,SECURITY_INFORMATION,PSECURITY_DESC
 WINADVAPI LONG WINAPI RegLoadKeyA(HKEY,LPCSTR,LPCSTR);
 WINADVAPI LONG WINAPI RegLoadKeyW(HKEY,LPCWSTR,LPCWSTR);
 WINADVAPI LONG WINAPI RegNotifyChangeKeyValue(HKEY,BOOL,DWORD,HANDLE,BOOL);
+/* https://msdn.microsoft.com/en-us/library/ms724894%28v=vs.85%29.aspx */
+WINADVAPI LONG WINAPI RegOpenCurrentUser(REGSAM,PHKEY);
 WINADVAPI LONG WINAPI RegOpenKeyA(HKEY,LPCSTR,PHKEY);
 WINADVAPI LONG WINAPI RegOpenKeyExA(HKEY,LPCSTR,DWORD,REGSAM,PHKEY);
 WINADVAPI LONG WINAPI RegOpenKeyExW(HKEY,LPCWSTR,DWORD,REGSAM,PHKEY);
 WINADVAPI LONG WINAPI RegOpenKeyW(HKEY,LPCWSTR,PHKEY);
+/* https://msdn.microsoft.com/en-us/library/ms724899%28v=vs.85%29.aspx */
+WINADVAPI LONG WINAPI RegOpenUserClassesRoot(HANDLE,DWORD,REGSAM,PHKEY);
+/* https://msdn.microsoft.com/en-us/library/ms724901%28v=vs.85%29.aspx */
+WINADVAPI LONG WINAPI RegOverridePredefKey(HKEY,HKEY);
 WINADVAPI LONG WINAPI RegQueryInfoKeyA(HKEY,LPSTR,PDWORD,PDWORD,PDWORD,PDWORD,PDWORD,PDWORD,PDWORD,PDWORD,PDWORD,PFILETIME);
 WINADVAPI LONG WINAPI RegQueryInfoKeyW(HKEY,LPWSTR,PDWORD,PDWORD,PDWORD,PDWORD,PDWORD,PDWORD,PDWORD,PDWORD,PDWORD,PFILETIME);
 WINADVAPI LONG WINAPI RegQueryMultipleValuesA(HKEY,PVALENTA,DWORD,LPSTR,LPDWORD);
@@ -111,65 +162,100 @@ WINADVAPI LONG WINAPI RegSetValueW(HKEY,LPCWSTR,DWORD,LPCWSTR,DWORD);
 WINADVAPI LONG WINAPI RegUnLoadKeyA(HKEY,LPCSTR);
 WINADVAPI LONG WINAPI RegUnLoadKeyW(HKEY,LPCWSTR);
 
-#ifdef UNICODE
-typedef VALENTW VALENT,*PVALENT;
-#define AbortSystemShutdown AbortSystemShutdownW
-#define InitiateSystemShutdown InitiateSystemShutdownW
-#define RegConnectRegistry RegConnectRegistryW
-#define RegCreateKey RegCreateKeyW
-#define RegCreateKeyEx RegCreateKeyExW
-#define RegDeleteKey RegDeleteKeyW
-#if (WINVER >= 0x0502)
-#define RegDeleteKeyEx RegDeleteKeyExW
-#endif
-#define RegDeleteValue RegDeleteValueW
-#define RegEnumKey RegEnumKeyW
-#define RegEnumKeyEx RegEnumKeyExW
-#define RegEnumValue RegEnumValueW
-#define RegLoadKey RegLoadKeyW
-#define RegOpenKey RegOpenKeyW
-#define RegOpenKeyEx RegOpenKeyExW
-#define RegQueryInfoKey RegQueryInfoKeyW
-#define RegQueryMultipleValues RegQueryMultipleValuesW
-#define RegQueryValue RegQueryValueW
-#define RegQueryValueEx RegQueryValueExW
-#define RegReplaceKey RegReplaceKeyW
-#define RegRestoreKey RegRestoreKeyW
-#define RegSaveKey RegSaveKeyW
-#define RegSetValue RegSetValueW
-#define RegSetValueEx RegSetValueExW
-#define RegUnLoadKey RegUnLoadKeyW
-#else
-typedef VALENTA VALENT,*PVALENT;
-#define AbortSystemShutdown AbortSystemShutdownA
-#define InitiateSystemShutdown InitiateSystemShutdownA
-#define RegConnectRegistry RegConnectRegistryA
-#define RegCreateKey RegCreateKeyA
-#define RegCreateKeyEx RegCreateKeyExA
-#define RegDeleteKey RegDeleteKeyA
-#if (WINVER >= 0x0502)
-#define RegDeleteKeyEx RegDeleteKeyExA
-#endif
-#define RegDeleteValue RegDeleteValueA
-#define RegEnumKey RegEnumKeyA
-#define RegEnumKeyEx RegEnumKeyExA
-#define RegEnumValue RegEnumValueA
-#define RegLoadKey RegLoadKeyA
-#define RegOpenKey RegOpenKeyA
-#define RegOpenKeyEx RegOpenKeyExA
-#define RegQueryInfoKey RegQueryInfoKeyA
-#define RegQueryMultipleValues RegQueryMultipleValuesA
-#define RegQueryValue RegQueryValueA
-#define RegQueryValueEx RegQueryValueExA
-#define RegReplaceKey RegReplaceKeyA
-#define RegRestoreKey RegRestoreKeyA
-#define RegSaveKey RegSaveKeyA
-#define RegSetValue RegSetValueA
-#define RegSetValueEx RegSetValueExA
-#define RegUnLoadKey RegUnLoadKeyA
-#endif
-#endif
+typedef __AW(VALENT) VALENT,*PVALENT;
+#define AbortSystemShutdown __AW(AbortSystemShutdown)
+#define InitiateSystemShutdown __AW(InitiateSystemShutdown)
+#define RegConnectRegistry __AW(RegConnectRegistry)
+#define RegCreateKey __AW(RegCreateKey)
+#define RegCreateKeyEx __AW(RegCreateKeyEx)
+#define RegDeleteKey __AW(RegDeleteKey)
+
+#define RegDeleteValue __AW(RegDeleteValue)
+#define RegEnumKey __AW(RegEnumKey)
+#define RegEnumKeyEx __AW(RegEnumKeyEx)
+#define RegEnumValue __AW(RegEnumValue)
+#define RegLoadKey __AW(RegLoadKey)
+#define RegOpenKey __AW(RegOpenKey)
+#define RegOpenKeyEx __AW(RegOpenKeyEx)
+#define RegQueryInfoKey __AW(RegQueryInfoKey)
+#define RegQueryMultipleValues __AW(RegQueryMultipleValues)
+#define RegQueryValue __AW(RegQueryValue)
+#define RegQueryValueEx __AW(RegQueryValueEx)
+#define RegReplaceKey __AW(RegReplaceKey)
+#define RegRestoreKey __AW(RegRestoreKey)
+#define RegSaveKey __AW(RegSaveKey)
+#define RegSetValue __AW(RegSetValue)
+#define RegSetValueEx __AW(RegSetValueEx)
+#define RegUnLoadKey __AW(RegUnLoadKey)
+
+#if (_WIN32_WINNT >= _WIN32_WINNT_WIN2K)
+WINADVAPI LONG WINAPI RegDeleteKeyExA(HKEY,LPCSTR,REGSAM,DWORD);
+WINADVAPI LONG WINAPI RegDeleteKeyExW(HKEY,LPCWSTR,REGSAM,DWORD);
+#define RegDeleteKeyEx __AW(RegDeleteKeyEx)
+#endif /* (_WIN32_WINNT >= _WIN32_WINNT_WIN2K) */
+
+#if (_WIN32_WINNT >= _WIN32_WINNT_WINXP)
+/* https://msdn.microsoft.com/en-us/library/ms724919%28v=vs.85%29.aspx */
+WINADVAPI LONG WINAPI RegSaveKeyExA(HKEY,LPCSTR,LPSECURITY_ATTRIBUTES,DWORD);
+WINADVAPI LONG WINAPI RegSaveKeyExW(HKEY,LPCWSTR,LPSECURITY_ATTRIBUTES,DWORD);
+#define RegSaveKeyEx __AW(RegSaveKeyEx)
+#endif /* (_WIN32_WINNT >= _WIN32_WINNT_WINXP) */
+
+#if (_WIN32_WINNT >= _WIN32_WINNT_WS03)
+/* https://msdn.microsoft.com/en-us/library/ms724858%28v=vs.85%29.aspx */
+WINADVAPI LONG WINAPI RegDisableReflectionKey(HKEY);
+/* https://msdn.microsoft.com/en-us/library/ms724859%28v=vs.85%29.aspx */
+WINADVAPI LONG WINAPI RegEnableReflectionKey(HKEY);
+/* https://msdn.microsoft.com/en-us/library/ms724907%28v=vs.85%29.aspx */
+WINADVAPI LONG WINAPI RegQueryReflectionKey(HKEY,BOOL*);
+#endif /* (_WIN32_WINNT >= _WIN32_WINNT_WS03) */
+
+#if (_WIN32_WINNT >= _WIN32_WINNT_VISTA)
+/* https://msdn.microsoft.com/en-us/library/aa379768%28v=vs.85%29.aspx */
+WINADVAPI LONG WINAPI RegCopyTreeA(HKEY,LPCSTR,HKEY);
+WINADVAPI LONG WINAPI RegCopyTreeW(HKEY,LPCWSTR,HKEY);
+/* https://msdn.microsoft.com/en-us/library/aa965882%28v=vs.85%29.aspx */
+WINADVAPI LONG WINAPI RegCreateKeyTransactedA(HKEY,LPCSTR,DWORD,LPSTR,DWORD,REGSAM,const LPSECURITY_ATTRIBUTES,PHKEY,LPDWORD,HANDLE,PVOID);
+WINADVAPI LONG WINAPI RegCreateKeyTransactedW(HKEY,LPCWSTR,DWORD,LPWSTR,DWORD,REGSAM,const LPSECURITY_ATTRIBUTES,PHKEY,LPDWORD,HANDLE,PVOID);
+/* https://msdn.microsoft.com/en-us/library/aa965883%28v=vs.85%29.aspx */
+WINADVAPI LONG WINAPI RegDeleteKeyTransactedA(HKEY,LPCSTR,REGSAM,DWORD,HANDLE,PVOID);
+WINADVAPI LONG WINAPI RegDeleteKeyTransactedW(HKEY,LPCWSTR,REGSAM,DWORD,HANDLE,PVOID);
+/* https://msdn.microsoft.com/en-us/library/ms724848%28v=vs.85%29.aspx */
+WINADVAPI LONG WINAPI RegDeleteKeyValueA(HKEY,LPCSTR,LPCSTR);
+WINADVAPI LONG WINAPI RegDeleteKeyValueW(HKEY,LPCWSTR,LPCWSTR);
+/* https://msdn.microsoft.com/en-us/library/aa379776%28v=vs.85%29.aspx */
+WINADVAPI LONG WINAPI RegDeleteTreeA(HKEY,LPCSTR);
+WINADVAPI LONG WINAPI RegDeleteTreeW(HKEY,LPCWSTR);
+/* https://msdn.microsoft.com/en-us/library/ms724855%28v=vs.85%29.aspx */
+WINADVAPI LONG WINAPI RegDisablePredefinedCacheEx(void);
+/* https://msdn.microsoft.com/en-us/library/ms724868%28v=vs.85%29.aspx */
+WINADVAPI LONG WINAPI RegGetValueA(HKEY,LPCSTR,LPCSTR,DWORD,LPDWORD,PVOID,LPDWORD);
+WINADVAPI LONG WINAPI RegGetValueW(HKEY,LPCWSTR,LPCWSTR,DWORD,LPDWORD,PVOID,LPDWORD);
+/* https://msdn.microsoft.com/en-us/library/ms724890%28v=vs.85%29.aspx */
+WINADVAPI LONG WINAPI RegLoadMUIStringA(HKEY,LPCSTR,LPSTR,DWORD,LPDWORD,DWORD,LPCSTR);
+WINADVAPI LONG WINAPI RegLoadMUIStringW(HKEY,LPCWSTR,LPWSTR,DWORD,LPDWORD,DWORD,LPCWSTR);
+/* https://msdn.microsoft.com/en-us/library/aa965886%28v=vs.85%29.aspx */
+WINADVAPI LONG WINAPI RegOpenKeyTransactedA(HKEY,LPCSTR,DWORD,REGSAM,PHKEY,HANDLE,PVOID);
+WINADVAPI LONG WINAPI RegOpenKeyTransactedW(HKEY,LPCWSTR,DWORD,REGSAM,PHKEY,HANDLE,PVOID);
+/* https://msdn.microsoft.com/en-us/library/ms724921%28v=vs.85%29.aspx */
+WINADVAPI LONG WINAPI RegSetKeyValueA(HKEY,LPCSTR,LPCSTR,DWORD,LPCVOID,DWORD);
+WINADVAPI LONG WINAPI RegSetKeyValueW(HKEY,LPCWSTR,LPCWSTR,DWORD,LPCVOID,DWORD);
+
+#define RegCopyTree __AW(RegCopyTree)
+#define RegCreateKeyTransacted __AW(RegCreateKeyTransacted)
+#define RegDeleteKeyTransacted __AW(RegDeleteKeyTransacted)
+#define RegDeleteKeyValue __AW(RegDeleteKeyValue)
+#define RegDeleteTree __AW(RegDeleteTree)
+#define RegGetValue __AW(RegGetValue)
+#define RegLoadMUIString __AW(RegLoadMUIString)
+#define RegOpenKeyTransacted __AW(RegOpenKeyTransacted)
+#define RegSetKeyValue __AW(RegSetKeyValue)
+#endif /* (_WIN32_WINNT >= _WIN32_WINNT_VISTA) */
+
+#endif /* ! RC_INVOKED */
+
 #ifdef __cplusplus
 }
 #endif
+
 #endif
index dd358d4..6689a03 100644 (file)
@@ -389,17 +389,30 @@ ReadEventLogW@28
 RegCloseKey@4
 RegConnectRegistryA@12
 RegConnectRegistryW@12
+RegCopyTreeA@12
+RegCopyTreeW@12
 RegCreateKeyA@12
 RegCreateKeyExA@36
 RegCreateKeyExW@36
+RegCreateKeyTransactedA@44
+RegCreateKeyTransactedW@44
 RegCreateKeyW@12
 RegDeleteKeyA@8
 RegDeleteKeyW@8
 RegDeleteKeyExA@16
 RegDeleteKeyExW@16
+RegDeleteKeyTransactedA@24
+RegDeleteKeyTransactedW@24
+RegDeleteKeyValueA@12
+RegDeleteKeyValueW@12
+RegDeleteTreeA@8
+RegDeleteTreeW@8
 RegDeleteValueA@8
 RegDeleteValueW@8
 RegDisablePredefinedCache@0
+RegDisablePredefinedCacheEx@0
+RegDisableReflectionKey@4
+RegEnableReflectionKey@4
 RegEnumKeyA@16
 RegEnumKeyExA@32
 RegEnumKeyExW@32
@@ -408,13 +421,19 @@ RegEnumValueA@32
 RegEnumValueW@32
 RegFlushKey@4
 RegGetKeySecurity@16
+RegGetValueA@28
+RegGetValueW@28
 RegLoadKeyA@12
 RegLoadKeyW@12
+RegLoadMUIStringA@28
+RegLoadMUIStringW@28
 RegNotifyChangeKeyValue@20
 RegOpenCurrentUser@8
 RegOpenKeyA@12
 RegOpenKeyExA@20
 RegOpenKeyExW@20
+RegOpenKeyTransactedA@28
+RegOpenKeyTransactedW@28
 RegOpenKeyW@12
 RegOpenUserClassesRoot@16
 RegOverridePredefKey@8
@@ -422,6 +441,7 @@ RegQueryInfoKeyA@48
 RegQueryInfoKeyW@48
 RegQueryMultipleValuesA@20
 RegQueryMultipleValuesW@20
+RegQueryReflectionKey@8
 RegQueryValueA@16
 RegQueryValueExA@24
 RegQueryValueExW@24
@@ -431,7 +451,11 @@ RegReplaceKeyW@16
 RegRestoreKeyA@12
 RegRestoreKeyW@12
 RegSaveKeyA@12
+RegSaveKeyExA@16
+RegSaveKeyExW@16
 RegSaveKeyW@12
+RegSetKeyValueA@24
+RegSetKeyValueW@24
 RegSetKeySecurity@12
 RegSetValueA@20
 RegSetValueExA@24
index fca559a..f8a7715 100644 (file)
@@ -957,17 +957,8 @@ ReadFileEx@20
 ReadFileScatter@20
 ReadProcessMemory@20
 ReadThreadProfilingData@12
-RegDeleteTreeA@8
-RegDeleteTreeW@8
-RegDisablePredefinedCacheEx@0
-RegGetValueA@28
-RegGetValueW@28
 RegKrnGetGlobalState@0
 RegKrnInitialize@12
-RegLoadMUIStringA@28
-RegLoadMUIStringW@28
-RegSaveKeyExA@16
-RegSaveKeyExW@16
 RegisterApplicationRecoveryCallback@16
 RegisterApplicationRestart@8
 RegisterConsoleIME@8