[MKHIVE] Return win32-like error codes for functions that expect to do so. Fix and...
[reactos.git] / sdk / tools / mkhive / registry.h
1 /*
2 * COPYRIGHT: See COPYING in the top level directory
3 * PROJECT: ReactOS hive maker
4 * FILE: tools/mkhive/registry.h
5 * PURPOSE: Registry code
6 */
7
8 #pragma once
9
10 typedef struct _HIVE_LIST_ENTRY
11 {
12 PCSTR HiveName;
13 PCWSTR HiveRegistryPath;
14 PCMHIVE CmHive;
15 PUCHAR SecurityDescriptor;
16 ULONG SecurityDescriptorLength;
17 } HIVE_LIST_ENTRY, *PHIVE_LIST_ENTRY;
18
19 #define MAX_NUMBER_OF_REGISTRY_HIVES 7
20 extern HIVE_LIST_ENTRY RegistryHives[];
21
22 #define ERROR_SUCCESS 0L
23 #define ERROR_INVALID_FUNCTION 1L
24 #define ERROR_FILE_NOT_FOUND 2L
25 #define ERROR_ACCESS_DENIED 5L
26 #define ERROR_NOT_ENOUGH_MEMORY 8L
27 #define ERROR_GEN_FAILURE 31L
28 #define ERROR_INVALID_PARAMETER 87L
29 // #define ERROR_MORE_DATA 234L
30 // #define ERROR_NO_MORE_ITEMS 259L
31 #define ERROR_NO_LOG_SPACE 1019L
32 #define ERROR_NO_SYSTEM_RESOURCES 1450L
33
34 #define REG_NONE 0
35 #define REG_SZ 1
36 #define REG_EXPAND_SZ 2
37 #define REG_BINARY 3
38 #define REG_DWORD 4
39 #define REG_DWORD_LITTLE_ENDIAN 4
40 #define REG_DWORD_BIG_ENDIAN 5
41 #define REG_LINK 6
42 #define REG_MULTI_SZ 7
43 #define REG_RESOURCE_LIST 8
44 #define REG_FULL_RESOURCE_DESCRIPTOR 9
45 #define REG_RESOURCE_REQUIREMENTS_LIST 10
46 #define REG_QWORD 11
47 #define REG_QWORD_LITTLE_ENDIAN 11
48
49 VOID
50 RegInitializeRegistry(
51 IN PCSTR HiveList);
52
53 VOID
54 RegShutdownRegistry(VOID);
55
56 /* EOF */