* Native Error Codes 
#DEFINE ERROR_SUCCESS  0
#DEFINE ERROR_MORE_DATA 234  && More data is available.  
#DEFINE ERROR_NO_MORE_ITEMS 259 && No more data is available. 

* REGAPI Error Codes
#DEFINE REGAPI_Other         -1
#DEFINE REGAPI_SUCCESS       ERROR_SUCCESS
#DEFINE REGAPI_MORE_DATA     ERROR_MORE_DATA  && More data is available.  
#DEFINE REGAPI_NO_MORE_ITEMS ERROR_NO_MORE_ITEMS && No more data is available. 

#DEFINE SECURITY_ACCESS_MASK 983103     && SAM value KEY_ALL_ACCESS

#DEFINE REG_NONE                        0 &&  No value type
#DEFINE REG_SZ                          1 &&  Unicode nul terminated string
#DEFINE REG_EXPAND_SZ                   2 &&  Unicode nul terminated string
#DEFINE REG_BINARY                      3 &&  Free form binary
#DEFINE REG_DWORD                       4 && 32-bit number
#DEFINE REG_DWORD_LITTLE_ENDIAN         4 && 32-bit number (same as REG_DWORD)
#DEFINE REG_DWORD_BIG_ENDIAN            5 && 32-bit number
#DEFINE REG_LINK                        6 && Symbolic Link (unicode)
#DEFINE REG_MULTI_SZ                    7 && Multiple Unicode strings
#DEFINE REG_RESOURCE_LIST               8 && Resource list in the resource map
#DEFINE REG_FULL_RESOURCE_DESCRIPTOR    9 && Resource list in the hardware description
#DEFINE REG_RESOURCE_REQUIREMENTS_LIST 10

#DEFINE REG_CREATED_NEW_KEY         0x00000001 && New Registry Key created
#DEFINE REG_OPENED_EXISTING_KEY     0x00000002 && Existing Key opened

#DEFINE HKEY_CLASSES_ROOT           0x80000000
#DEFINE HKEY_CURRENT_USER           0x80000001
#DEFINE HKEY_LOCAL_MACHINE          0x80000002
#DEFINE HKEY_USERS                  0x80000003
#DEFINE HKEY_PERFORMANCE_DATA       0x80000004
#DEFINE HKEY_CURRENT_CONFIG         0x80000005
#DEFINE HKEY_DYN_DATA               0x80000006
