update for HEAD-2003091401
[reactos.git] / include / ntos / registry.h
1 /* $Id$
2  *
3  * COPYRIGHT:    See COPYING in the top level directory
4  * PROJECT:      ReactOS kernel
5  * FILE:         include/ntos/registry.h
6  * PURPOSE:      Registry declarations used by all the parts of the 
7  *               system
8  * PROGRAMMER:   Eric Kohl <ekohl@rz-online.de>
9  * UPDATE HISTORY: 
10  *               25/01/2001: Created
11  */
12
13 #ifndef __INCLUDE_NTOS_REGISTRY_H
14 #define __INCLUDE_NTOS_REGISTRY_H
15
16 #ifndef __USE_W32API
17
18 /* Key access rights */
19 #define KEY_QUERY_VALUE                 (1)
20 #define KEY_SET_VALUE                   (2)
21 #define KEY_CREATE_SUB_KEY              (4)
22 #define KEY_ENUMERATE_SUB_KEYS          (8)
23 #define KEY_NOTIFY                      (16)
24 #define KEY_CREATE_LINK                 (32)
25
26 #define KEY_READ                        (0x20019L)
27 #define KEY_WRITE                       (0x20006L)
28 #define KEY_EXECUTE                     (0x20019L)
29 #define KEY_ALL_ACCESS                  (0xf003fL)
30
31 /* Key create options */
32 #define REG_OPTION_NON_VOLATILE         (0x0L)
33 #define REG_OPTION_VOLATILE             (0x1L)
34 #define REG_OPTION_CREATE_LINK          (0x2L)
35 #define REG_OPTION_BACKUP_RESTORE       (0x8L)
36 #define REG_OPTION_OPEN_LINK            (0x8L)
37
38 /* Key load/restore options */
39 #define REG_WHOLE_HIVE_VOLATILE         (0x1L)
40 #define REG_REFRESH_HIVE                (0x2L)
41 #define REG_NO_LAZY_FLUSH               (0x4L)
42 #define REG_FORCE_RESTORE               (0x8L)
43
44 /* Key create/open disposition */
45 #define REG_CREATED_NEW_KEY             (0x1L)
46 #define REG_OPENED_EXISTING_KEY         (0x2L)
47
48 /* Value types */
49 #define REG_NONE                        (0)
50 #define REG_SZ                          (1)
51 #define REG_EXPAND_SZ                   (2)
52 #define REG_BINARY                      (3)
53 #define REG_DWORD                       (4)
54 #define REG_DWORD_LITTLE_ENDIAN         (4)
55 #define REG_DWORD_BIG_ENDIAN            (5)
56 #define REG_LINK                        (6)
57 #define REG_MULTI_SZ                    (7)
58 #define REG_RESOURCE_LIST               (8)
59 #define REG_FULL_RESOURCE_DESCRIPTOR    (9)
60 #define REG_RESOURCE_REQUIREMENTS_LIST  (10)
61
62 #endif /* !__USE_W32API */
63
64 #endif /* __INCLUDE_NTOS_REGISTRY_H */