10 #define HKEY_CLASSES_ROOT ((HKEY)(LONG_PTR)(LONG)0x80000000) 11 #define HKEY_CURRENT_USER ((HKEY)(LONG_PTR)(LONG)0x80000001) 12 #define HKEY_LOCAL_MACHINE ((HKEY)(LONG_PTR)(LONG)0x80000002) 13 #define HKEY_USERS ((HKEY)(LONG_PTR)(LONG)0x80000003) 14 #define HKEY_PERFORMANCE_DATA ((HKEY)(LONG_PTR)(LONG)0x80000004) 15 #define HKEY_CURRENT_CONFIG ((HKEY)(LONG_PTR)(LONG)0x80000005) 16 #define HKEY_DYN_DATA ((HKEY)(LONG_PTR)(LONG)0x80000006) 17 #define HKEY_PERFORMANCE_TEXT ((HKEY)(LONG_PTR)(LONG)0x80000050) 18 #define HKEY_PERFORMANCE_NLSTEXT ((HKEY)(LONG_PTR)(LONG)0x80000060) 20 #define REG_OPTION_VOLATILE 1 21 #define REG_OPTION_NON_VOLATILE 0 22 #define REG_CREATED_NEW_KEY 1 23 #define REG_OPENED_EXISTING_KEY 2 26 #define REG_EXPAND_SZ 2 28 #define REG_DWORD_LITTLE_ENDIAN 4 30 #define REG_DWORD_BIG_ENDIAN 5 32 #define REG_MULTI_SZ 7 33 #define REG_RESOURCE_LIST 8 34 #define REG_FULL_RESOURCE_DESCRIPTOR 9 35 #define REG_RESOURCE_REQUIREMENTS_LIST 10 36 #define REG_QWORD_LITTLE_ENDIAN 11 38 #define REG_NOTIFY_CHANGE_NAME 1 39 #define REG_NOTIFY_CHANGE_ATTRIBUTES 2 40 #define REG_NOTIFY_CHANGE_LAST_SET 4 41 #define REG_NOTIFY_CHANGE_SECURITY 8 44 #define SHUTDOWN_FORCE_OTHERS 0x00000001 45 #define SHUTDOWN_FORCE_SELF 0x00000002 46 #define SHUTDOWN_GRACE_OVERRIDE 0x00000020 47 #define SHUTDOWN_INSTALL_UPDATES 0x00000040 48 #define SHUTDOWN_NOREBOOT 0x00000010 49 #define SHUTDOWN_POWEROFF 0x00000008 50 #define SHUTDOWN_RESTART 0x00000004 51 #define SHUTDOWN_RESTARTAPPS 0x00000080 53 #define MAX_SHUTDOWN_TIMEOUT (10*365*24*60*60) 55 #define RRF_RT_REG_NONE (1 << 0) 56 #define RRF_RT_REG_SZ (1 << 1) 57 #define RRF_RT_REG_EXPAND_SZ (1 << 2) 58 #define RRF_RT_REG_BINARY (1 << 3) 59 #define RRF_RT_REG_DWORD (1 << 4) 60 #define RRF_RT_REG_MULTI_SZ (1 << 5) 61 #define RRF_RT_REG_QWORD (1 << 6) 62 #define RRF_RT_DWORD (RRF_RT_REG_BINARY | RRF_RT_REG_DWORD) 63 #define RRF_RT_QWORD (RRF_RT_REG_BINARY | RRF_RT_REG_QWORD) 64 #define RRF_RT_ANY (0x0000FFFF) 65 #define RRF_NOEXPAND (1 << 28) 66 #define RRF_ZEROONFAILURE (1 << 29) 87 #if (_WIN32_WINNT >= 0x0600) 100 #if (_WIN32_WINNT >= 0x0600) 114 #if (_WIN32_WINNT >= 0x0600) 124 #if (_WIN32_WINNT >= 0x0500) 130 #if (_WIN32_WINNT >= 0x0600) 200 #if (_WIN32_WINNT >= 0x0600) 247 #if (_WIN32_WINNT >= 0x0600) 330 #if (_WIN32_WINNT >= 0x0600) 380 #if (_WIN32_WINNT >= 0x0600) 447 #define AbortSystemShutdown AbortSystemShutdownW 448 #define InitiateSystemShutdown InitiateSystemShutdownW 449 #define InitiateSystemShutdownEx InitiateSystemShutdownExW 450 #define RegConnectRegistry RegConnectRegistryW 451 #if (_WIN32_WINNT >= 0x0600) 452 #define InitiateShutdown InitiateShutdownW 453 #define RegCopyTree RegCopyTreeW 455 #define RegCreateKey RegCreateKeyW 456 #define RegCreateKeyEx RegCreateKeyExW 457 #define RegDeleteKey RegDeleteKeyW 458 #define RegDeleteKeyEx RegDeleteKeyExW 459 #if (_WIN32_WINNT >= 0x0600) 460 #define RegDeleteKeyValue RegDeleteKeyValueW 461 #define RegDeleteTree RegDeleteTreeW 463 #define RegDeleteValue RegDeleteValueW 464 #define RegEnumKey RegEnumKeyW 465 #define RegEnumKeyEx RegEnumKeyExW 466 #define RegEnumValue RegEnumValueW 467 #if (_WIN32_WINNT >= 0x0600) 468 #define RegGetValue RegGetValueW 470 #define RegLoadKey RegLoadKeyW 471 #if (_WIN32_WINNT >= 0x0600) 472 #define RegLoadMUIString RegLoadMUIStringW 474 #define RegOpenKey RegOpenKeyW 475 #define RegOpenKeyEx RegOpenKeyExW 476 #define RegQueryInfoKey RegQueryInfoKeyW 477 #define RegQueryMultipleValues RegQueryMultipleValuesW 478 #define RegQueryValue RegQueryValueW 479 #define RegQueryValueEx RegQueryValueExW 480 #define RegReplaceKey RegReplaceKeyW 481 #define RegRestoreKey RegRestoreKeyW 482 #define RegSaveKey RegSaveKeyW 483 #define RegSaveKeyEx RegSaveKeyExW 484 #if (_WIN32_WINNT >= 0x0600) 485 #define RegSetKeyValue RegSetKeyValueW 487 #define RegSetValue RegSetValueW 488 #define RegSetValueEx RegSetValueExW 489 #define RegUnLoadKey RegUnLoadKeyW 492 #define AbortSystemShutdown AbortSystemShutdownA 493 #define InitiateSystemShutdown InitiateSystemShutdownA 494 #define InitiateSystemShutdownEx InitiateSystemShutdownExA 495 #define RegConnectRegistry RegConnectRegistryA 496 #if (_WIN32_WINNT >= 0x0600) 497 #define InitiateShutdown InitiateShutdownA 498 #define RegCopyTree RegCopyTreeA 500 #define RegCreateKey RegCreateKeyA 501 #define RegCreateKeyEx RegCreateKeyExA 502 #define RegDeleteKey RegDeleteKeyA 503 #define RegDeleteKeyEx RegDeleteKeyExA 504 #if (_WIN32_WINNT >= 0x0600) 505 #define RegDeleteKeyValue RegDeleteKeyValueA 506 #define RegDeleteTree RegDeleteTreeA 508 #define RegDeleteValue RegDeleteValueA 509 #define RegEnumKey RegEnumKeyA 510 #define RegEnumKeyEx RegEnumKeyExA 511 #define RegEnumValue RegEnumValueA 512 #if (_WIN32_WINNT >= 0x0600) 513 #define RegGetValue RegGetValueA 515 #define RegLoadKey RegLoadKeyA 516 #if (_WIN32_WINNT >= 0x0600) 517 #define RegLoadMUIString RegLoadMUIStringA 519 #define RegOpenKey RegOpenKeyA 520 #define RegOpenKeyEx RegOpenKeyExA 521 #define RegQueryInfoKey RegQueryInfoKeyA 522 #define RegQueryMultipleValues RegQueryMultipleValuesA 523 #define RegQueryValue RegQueryValueA 524 #define RegQueryValueEx RegQueryValueExA 525 #define RegReplaceKey RegReplaceKeyA 526 #define RegRestoreKey RegRestoreKeyA 527 #define RegSaveKey RegSaveKeyA 528 #define RegSaveKeyEx RegSaveKeyExA 529 #if (_WIN32_WINNT >= 0x0600) 530 #define RegSetKeyValue RegSetKeyValueA 532 #define RegSetValue RegSetValueA 533 #define RegSetValueEx RegSetValueExA 534 #define RegUnLoadKey RegUnLoadKeyA LSTATUS WINAPI RegGetValueW(HKEY hKey, LPCWSTR pszSubKey, LPCWSTR pszValue, DWORD dwFlags, LPDWORD pdwType, PVOID pvData, LPDWORD pcbData)
LONG WINAPI RegDeleteKeyValueA(IN HKEY hKey, IN LPCSTR lpSubKey OPTIONAL, IN LPCSTR lpValueName OPTIONAL)
LSTATUS WINAPI RegEnumKeyW(_In_ HKEY hKey, _In_ DWORD dwIndex, _Out_writes_opt_(cchName) LPWSTR lpName, _In_ DWORD cchName)
LONG WINAPI RegSaveKeyExW(HKEY hKey, LPCWSTR lpFile, LPSECURITY_ATTRIBUTES lpSecurityAttributes, DWORD Flags)
typedef _Return_type_success_(return==ERROR_SUCCESS) LONG LSTATUS
LSTATUS WINAPI RegQueryValueExW(_In_ HKEY hKey, _In_opt_ LPCWSTR lpValueName, _Reserved_ LPDWORD lpReserved, _Out_opt_ LPDWORD lpType, _Out_writes_bytes_to_opt_(*lpcbData, *lpcbData) __out_data_source(REGISTRY) LPBYTE lpData, _When_(lpData==NULL, _Out_opt_) _When_(lpData !=NULL, _Inout_opt_) LPDWORD lpcbData)
LSTATUS WINAPI RegSetValueW(_In_ HKEY hKey, _In_opt_ LPCWSTR lpSubKey, _In_ DWORD dwType, _In_reads_bytes_opt_(cbData) LPCWSTR lpData, _In_ DWORD cbData)
LSTATUS WINAPI RegUnLoadKeyW(_In_ HKEY, _In_opt_ LPCWSTR)
LSTATUS WINAPI RegFlushKey(_In_ HKEY)
LSTATUS WINAPI RegEnumKeyExW(_In_ HKEY hKey, _In_ DWORD dwIndex, _Out_writes_to_opt_(*lpcchName, *lpcchName+1) LPWSTR lpName, _Inout_ LPDWORD lpcchName, _Reserved_ LPDWORD lpReserved, _Out_writes_to_opt_(*lpcchClass, *lpcchClass+1) LPWSTR lpClass, _Inout_opt_ LPDWORD lpcchClass, _Out_opt_ PFILETIME lpftLastWriteTime)
LSTATUS WINAPI RegEnumValueW(_In_ HKEY hKey, _In_ DWORD dwIndex, _Out_writes_to_opt_(*lpcchValueName, *lpcchValueName+1) LPWSTR lpValueName, _Inout_ LPDWORD lpcchValueName, _Reserved_ LPDWORD lpReserved, _Out_opt_ LPDWORD lpType, _Out_writes_bytes_to_opt_(*lpcbData, *lpcbData) __out_data_source(REGISTRY) LPBYTE lpData, _Inout_opt_ LPDWORD lpcbData)
LSTATUS WINAPI RegQueryValueExA(_In_ HKEY hKey, _In_opt_ LPCSTR lpValueName, _Reserved_ LPDWORD lpReserved, _Out_opt_ LPDWORD lpType, _Out_writes_bytes_to_opt_(*lpcbData, *lpcbData) __out_data_source(REGISTRY) LPBYTE lpData, _When_(lpData==NULL, _Out_opt_) _When_(lpData !=NULL, _Inout_opt_) LPDWORD lpcbData)
struct value_entW VALENTW
LSTATUS WINAPI RegGetKeySecurity(_In_ HKEY hKey, _In_ SECURITY_INFORMATION SecurityInformation, _Out_writes_bytes_opt_(*lpcbSecurityDescriptor) PSECURITY_DESCRIPTOR pSecurityDescriptor, _Inout_ LPDWORD lpcbSecurityDescriptor)
LSTATUS WINAPI RegConnectRegistryW(_In_opt_ LPCWSTR, _In_ HKEY, _Out_ PHKEY)
LSTATUS WINAPI RegOpenKeyExW(_In_ HKEY, _In_opt_ LPCWSTR, _In_opt_ DWORD, _In_ REGSAM, _Out_ PHKEY)
BOOL WINAPI AbortSystemShutdownW(_In_opt_ LPCWSTR)
LONG WINAPI RegSetKeyValueW(IN HKEY hKey, IN LPCWSTR lpSubKey OPTIONAL, IN LPCWSTR lpValueName OPTIONAL, IN DWORD dwType, IN LPCVOID lpData OPTIONAL, IN DWORD cbData)
LSTATUS WINAPI RegSetKeySecurity(_In_ HKEY, _In_ SECURITY_INFORMATION, _In_ PSECURITY_DESCRIPTOR)
LONG WINAPI RegSetKeyValueA(IN HKEY hKey, IN LPCSTR lpSubKey OPTIONAL, IN LPCSTR lpValueName OPTIONAL, IN DWORD dwType, IN LPCVOID lpData OPTIONAL, IN DWORD cbData)
LSTATUS WINAPI RegConnectRegistryA(_In_opt_ LPCSTR, _In_ HKEY, _Out_ PHKEY)
LSTATUS WINAPI RegOpenKeyExA(_In_ HKEY, _In_opt_ LPCSTR, _In_opt_ DWORD, _In_ REGSAM, _Out_ PHKEY)
#define _When_(expr, annos)
LSTATUS WINAPI RegRestoreKeyW(_In_ HKEY, _In_ LPCWSTR, _In_ DWORD)
LSTATUS WINAPI RegRestoreKeyA(_In_ HKEY, _In_ LPCSTR, _In_ DWORD)
LSTATUS WINAPI RegEnumKeyA(_In_ HKEY hKey, _In_ DWORD dwIndex, _Out_writes_opt_(cchName) LPSTR lpName, _In_ DWORD cchName)
LSTATUS WINAPI RegLoadKeyA(_In_ HKEY, _In_opt_ LPCSTR, _In_ LPCSTR)
LONG WINAPI RegDisableReflectionKey(IN HKEY hBase)
LSTATUS WINAPI RegCreateKeyW(_In_ HKEY hKey, _In_opt_ LPCWSTR lpSubKey, _Out_ PHKEY phkResult)
LONG WINAPI RegDeleteTreeA(IN HKEY hKey, IN LPCSTR lpSubKey OPTIONAL)
LSTATUS WINAPI RegDeleteKeyA(_In_ HKEY hKey, _In_ LPCSTR lpSubKey)
#define _Out_writes_to_opt_(size, count)
LSTATUS WINAPI RegSetValueA(_In_ HKEY hKey, _In_opt_ LPCSTR lpSubKey, _In_ DWORD dwType, _In_reads_bytes_opt_(cbData) LPCSTR lpData, _In_ DWORD cbData)
struct value_entA * PVALENTA
_In_ PSID _Out_writes_to_opt_ cchName LPSTR _Inout_ LPDWORD cchName
LSTATUS WINAPI RegQueryMultipleValuesA(_In_ HKEY hKey, _Out_writes_(num_vals) PVALENTA val_list, _In_ DWORD num_vals, _Out_writes_bytes_to_opt_(*ldwTotsize, *ldwTotsize) __out_data_source(REGISTRY) LPSTR lpValueBuf, _Inout_opt_ LPDWORD ldwTotsize)
LONG WINAPI RegEnableReflectionKey(IN HKEY hBase)
DWORD WINAPI InitiateShutdownA(LPSTR lpMachineName, LPSTR lpMessage, DWORD dwGracePeriod, DWORD dwShutdownFlags, DWORD dwReason)
LONG WINAPI RegDisablePredefinedCacheEx(VOID)
LSTATUS WINAPI RegDeleteKeyExA(_In_ HKEY hKey, _In_ LPCSTR lpSubKey, _In_ REGSAM samDesired, _Reserved_ DWORD Reserved)
DWORD SECURITY_INFORMATION
LONG WINAPI RegCopyTreeA(IN HKEY hKeySrc, IN LPCSTR lpSubKey OPTIONAL, IN HKEY hKeyDest)
BOOL WINAPI AbortSystemShutdownA(_In_opt_ LPCSTR)
LONG WINAPI RegSaveKeyExA(HKEY hKey, LPCSTR lpFile, LPSECURITY_ATTRIBUTES lpSecurityAttributes, DWORD Flags)
BOOL WINAPI InitiateSystemShutdownA(_In_opt_ LPSTR, _In_opt_ LPSTR, _In_ DWORD, _In_ BOOL, _In_ BOOL)
LSTATUS WINAPI RegQueryInfoKeyW(_In_ HKEY hKey, _Out_writes_to_opt_(*lpcchClass, *lpcchClass+1) LPWSTR lpClass, _Inout_opt_ LPDWORD lpcchClass, _Reserved_ LPDWORD lpReserved, _Out_opt_ LPDWORD lpcSubKeys, _Out_opt_ LPDWORD lpcbMaxSubKeyLen, _Out_opt_ LPDWORD lpcbMaxClassLen, _Out_opt_ LPDWORD lpcValues, _Out_opt_ LPDWORD lpcbMaxValueNameLen, _Out_opt_ LPDWORD lpcbMaxValueLen, _Out_opt_ LPDWORD lpcbSecurityDescriptor, _Out_opt_ PFILETIME lpftLastWriteTime)
_In_ ULONG _In_opt_ PVOID pvData
LSTATUS WINAPI RegNotifyChangeKeyValue(_In_ HKEY, _In_ BOOL, _In_ DWORD, _In_opt_ HANDLE, _In_ BOOL)
_Must_inspect_result_ _In_ PFILE_OBJECT _In_ SECURITY_INFORMATION SecurityInformation
_Reserved_ PVOID Reserved
LSTATUS WINAPI RegReplaceKeyW(_In_ HKEY, _In_opt_ LPCWSTR, _In_ LPCWSTR, _In_ LPCWSTR)
LSTATUS WINAPI RegDeleteKeyW(_In_ HKEY hKey, _In_ LPCWSTR lpSubKey)
LSTATUS WINAPI RegGetValueA(HKEY hKey, LPCSTR pszSubKey, LPCSTR pszValue, DWORD dwFlags, LPDWORD pdwType, PVOID pvData, LPDWORD pcbData)
BOOL WINAPI InitiateSystemShutdownExW(_In_opt_ LPWSTR, _In_opt_ LPWSTR, _In_ DWORD, _In_ BOOL, _In_ BOOL, _In_ DWORD)
#define _Out_writes_bytes_opt_(size)
LSTATUS WINAPI RegQueryMultipleValuesW(_In_ HKEY hKey, _Out_writes_(num_vals) PVALENTW val_list, _In_ DWORD num_vals, _Out_writes_bytes_to_opt_(*ldwTotsize, *ldwTotsize) __out_data_source(REGISTRY) LPWSTR lpValueBuf, _Inout_opt_ LPDWORD ldwTotsize)
DWORD WINAPI InitiateShutdownW(LPWSTR lpMachineName, LPWSTR lpMessage, DWORD dwGracePeriod, DWORD dwShutdownFlags, DWORD dwReason)
#define RRF_RT_REG_MULTI_SZ
LSTATUS WINAPI RegDeleteValueW(_In_ HKEY, _In_opt_ LPCWSTR)
_Must_inspect_result_ _In_ ULONG Flags
LONG RegLoadMUIStringW(IN HKEY hKey, IN LPCWSTR pszValue OPTIONAL, OUT LPWSTR pszOutBuf, IN DWORD cbOutBuf, OUT LPDWORD pcbData OPTIONAL, IN DWORD Flags, IN LPCWSTR pszDirectory OPTIONAL)
LSTATUS WINAPI RegLoadKeyW(_In_ HKEY, _In_opt_ LPCWSTR, _In_ LPCWSTR)
LSTATUS WINAPI RegEnumValueA(_In_ HKEY hKey, _In_ DWORD dwIndex, _Out_writes_to_opt_(*lpcchValueName, *lpcchValueName+1) LPSTR lpValueName, _Inout_ LPDWORD lpcchValueName, _Reserved_ LPDWORD lpReserved, _Out_opt_ LPDWORD lpType, _Out_writes_bytes_to_opt_(*lpcbData, *lpcbData) __out_data_source(REGISTRY) LPBYTE lpData, _Inout_opt_ LPDWORD lpcbData)
#define RRF_RT_REG_EXPAND_SZ
LSTATUS WINAPI RegCloseKey(_In_ HKEY hKey)
LSTATUS WINAPI RegOpenKeyW(_In_ HKEY, _In_opt_ LPCWSTR, _Out_ PHKEY)
static LSTATUS(WINAPI *pRegDeleteTreeW)(HKEY
_In_ _In_opt_ _Out_writes_bytes_to_opt_ lpdwBufferLength __out_data_source(NETWORK) LPVOID
LSTATUS WINAPI RegCreateKeyExW(_In_ HKEY hKey, _In_ LPCWSTR lpSubKey, _Reserved_ DWORD Reserved, _In_opt_ LPWSTR lpClass, _In_ DWORD dwOptions, _In_ REGSAM samDesired, _In_opt_ LPSECURITY_ATTRIBUTES lpSecurityAttributes, _Out_ PHKEY phkResult, _Out_opt_ PDWORD lpdwDisposition)
LSTATUS WINAPI RegReplaceKeyA(_In_ HKEY, _In_opt_ LPCSTR, _In_ LPCSTR, _In_ LPCSTR)
LSTATUS WINAPI RegUnLoadKeyA(_In_ HKEY, _In_opt_ LPCSTR)
_In_ PCCERT_CONTEXT _In_ DWORD dwFlags
LSTATUS WINAPI RegQueryInfoKeyA(_In_ HKEY hKey, _Out_writes_to_opt_(*lpcchClass, *lpcchClass+1) LPSTR lpClass, _Inout_opt_ LPDWORD lpcchClass, _Reserved_ LPDWORD lpReserved, _Out_opt_ LPDWORD lpcSubKeys, _Out_opt_ LPDWORD lpcbMaxSubKeyLen, _Out_opt_ LPDWORD lpcbMaxClassLen, _Out_opt_ LPDWORD lpcValues, _Out_opt_ LPDWORD lpcbMaxValueNameLen, _Out_opt_ LPDWORD lpcbMaxValueLen, _Out_opt_ LPDWORD lpcbSecurityDescriptor, _Out_opt_ PFILETIME lpftLastWriteTime)
#define _Out_writes_bytes_to_opt_(size, count)
LSTATUS WINAPI RegEnumKeyExA(_In_ HKEY hKey, _In_ DWORD dwIndex, _Out_writes_to_opt_(*lpcchName, *lpcchName+1) LPSTR lpName, _Inout_ LPDWORD lpcchName, _Reserved_ LPDWORD lpReserved, _Out_writes_to_opt_(*lpcchClass, *lpcchClass+1) LPSTR lpClass, _Inout_opt_ LPDWORD lpcchClass, _Out_opt_ PFILETIME lpftLastWriteTime)
LSTATUS WINAPI RegDeleteTreeW(HKEY hKey, LPCWSTR lpszSubKey)
LSTATUS WINAPI RegSaveKeyA(_In_ HKEY, _In_ LPCSTR, _In_opt_ LPSECURITY_ATTRIBUTES)
LSTATUS WINAPI RegQueryValueW(_In_ HKEY hKey, _In_opt_ LPCWSTR lpSubKey, _Out_writes_bytes_to_opt_(*lpcbData, *lpcbData) __out_data_source(REGISTRY) LPWSTR lpData, _Inout_opt_ PLONG lpcbData)
_In_ UINT _Out_writes_opt_(cch) LPSTR lpszFile
BOOL WINAPI InitiateSystemShutdownExA(_In_opt_ LPSTR, _In_opt_ LPSTR, _In_ DWORD, _In_ BOOL, _In_ BOOL, _In_ DWORD)
LSTATUS WINAPI RegSaveKeyW(_In_ HKEY, _In_ LPCWSTR, _In_opt_ LPSECURITY_ATTRIBUTES)
#define _In_reads_bytes_opt_(size)
LONG WINAPI RegDeleteKeyValueW(IN HKEY hKey, IN LPCWSTR lpSubKey OPTIONAL, IN LPCWSTR lpValueName OPTIONAL)
LSTATUS WINAPI RegSetValueExW(_In_ HKEY hKey, _In_opt_ LPCWSTR lpValueName, _Reserved_ DWORD Reserved, _In_ DWORD dwType, _In_reads_bytes_opt_(cbData) const BYTE *lpData, _In_ DWORD cbData)
LONG WINAPI RegCopyTreeW(IN HKEY hKeySrc, IN LPCWSTR lpSubKey OPTIONAL, IN HKEY hKeyDest)
LONG WINAPI RegQueryReflectionKey(IN HKEY hBase, OUT BOOL *bIsReflectionDisabled)
struct value_entW * PVALENTW
LSTATUS WINAPI RegQueryValueA(_In_ HKEY hKey, _In_opt_ LPCSTR lpSubKey, _Out_writes_bytes_to_opt_(*lpcbData, *lpcbData) __out_data_source(REGISTRY) LPSTR lpData, _Inout_opt_ PLONG lpcbData)
LSTATUS WINAPI RegOpenCurrentUser(_In_ REGSAM, _Out_ PHKEY)
LSTATUS WINAPI RegSetValueExA(_In_ HKEY hKey, _In_opt_ LPCSTR lpValueName, _Reserved_ DWORD Reserved, _In_ DWORD dwType, _In_reads_bytes_opt_(cbData) const BYTE *lpData, _In_ DWORD cbData)
BOOL WINAPI InitiateSystemShutdownW(_In_opt_ LPWSTR, _In_opt_ LPWSTR, _In_ DWORD, _In_ BOOL, _In_ BOOL)
LONG WINAPI RegLoadMUIStringA(IN HKEY hKey, IN LPCSTR pszValue OPTIONAL, OUT LPSTR pszOutBuf, IN DWORD cbOutBuf, OUT LPDWORD pcbData OPTIONAL, IN DWORD Flags, IN LPCSTR pszDirectory OPTIONAL)
LSTATUS WINAPI RegDeleteKeyExW(_In_ HKEY hKey, _In_ LPCWSTR lpSubKey, _In_ REGSAM samDesired, _Reserved_ DWORD Reserved)
LONG WINAPI RegDisablePredefinedCache(VOID)
LSTATUS WINAPI RegDeleteValueA(_In_ HKEY, _In_opt_ LPCSTR)
struct value_entA VALENTA
LSTATUS WINAPI RegCreateKeyExA(_In_ HKEY hKey, _In_ LPCSTR lpSubKey, _Reserved_ DWORD Reserved, _In_opt_ LPSTR lpClass, _In_ DWORD dwOptions, _In_ REGSAM samDesired, _In_opt_ LPSECURITY_ATTRIBUTES lpSecurityAttributes, _Out_ PHKEY phkResult, _Out_opt_ PDWORD lpdwDisposition)
LSTATUS WINAPI RegCreateKeyA(_In_ HKEY hKey, _In_opt_ LPCSTR lpSubKey, _Out_ PHKEY phkResult)
_In_ DWORD _Out_writes_bytes_to_opt_ pcbData void _Inout_ DWORD * pcbData
#define _NullNull_terminated_
#define _Out_writes_(size)
LSTATUS WINAPI RegOpenKeyA(_In_ HKEY, _In_opt_ LPCSTR, _Out_ PHKEY)