Home | Info | Community | Development | myReactOS | Contact Us
ReactOS Development > Doxygenregistry.h
Go to the documentation of this file.
00001 /* COPYRIGHT: See COPYING in the top level directory 00002 * PROJECT: ReactOS hive maker 00003 * FILE: tools/mkhive/registry.h 00004 * PURPOSE: Registry code 00005 */ 00006 00007 #pragma once 00008 00009 typedef struct _REG_VALUE 00010 { 00011 LIST_ENTRY ValueList; 00012 00013 /* value name */ 00014 ULONG NameSize; 00015 PCHAR Name; 00016 00017 /* value data */ 00018 ULONG DataType; 00019 ULONG DataSize; 00020 PCHAR Data; 00021 } VALUE, *PVALUE; 00022 00023 typedef struct _REG_KEY 00024 { 00025 LIST_ENTRY KeyList; 00026 LIST_ENTRY SubKeyList; 00027 LIST_ENTRY ValueList; 00028 00029 ULONG SubKeyCount; 00030 ULONG ValueCount; 00031 00032 ULONG NameSize; 00033 PWCHAR Name; 00034 00035 /* default data */ 00036 ULONG DataType; 00037 ULONG DataSize; 00038 PCHAR Data; 00039 00040 /* Information on hard disk structure */ 00041 HCELL_INDEX KeyCellOffset; 00042 PCM_KEY_NODE KeyCell; 00043 PCMHIVE RegistryHive; 00044 00045 /* Used when linking to another key */ 00046 struct _REG_KEY* LinkedKey; 00047 } KEY, *FRLDRHKEY, **PFRLDRHKEY, *MEMKEY, **PMEMKEY; 00048 00049 #define HKEY_TO_MEMKEY(hKey) ((MEMKEY)(hKey)) 00050 #define MEMKEY_TO_HKEY(memKey) ((HKEY)(memKey)) 00051 00052 extern CMHIVE DefaultHive; /* \Registry\User\.DEFAULT */ 00053 extern CMHIVE SamHive; /* \Registry\Machine\SAM */ 00054 extern CMHIVE SecurityHive; /* \Registry\Machine\SECURITY */ 00055 extern CMHIVE SoftwareHive; /* \Registry\Machine\SOFTWARE */ 00056 extern CMHIVE SystemHive; /* \Registry\Machine\SYSTEM */ 00057 00058 #define ERROR_SUCCESS 0L 00059 #define ERROR_UNSUCCESSFUL 1L 00060 #define ERROR_OUTOFMEMORY 14L 00061 #define ERROR_INVALID_PARAMETER 87L 00062 #define ERROR_MORE_DATA 234L 00063 #define ERROR_NO_MORE_ITEMS 259L 00064 00065 #define REG_NONE 0 00066 #define REG_SZ 1 00067 #define REG_EXPAND_SZ 2 00068 #define REG_BINARY 3 00069 #define REG_DWORD 4 00070 #define REG_DWORD_BIG_ENDIAN 5 00071 #define REG_DWORD_LITTLE_ENDIAN 4 00072 #define REG_LINK 6 00073 #define REG_MULTI_SZ 7 00074 #define REG_RESOURCE_LIST 8 00075 #define REG_FULL_RESOURCE_DESCRIPTOR 9 00076 #define REG_RESOURCE_REQUIREMENTS_LIST 10 00077 00078 LONG WINAPI 00079 RegCreateKeyA( 00080 IN HKEY hKey, 00081 IN LPCSTR lpSubKey, 00082 OUT PHKEY phkResult); 00083 00084 LONG WINAPI 00085 RegOpenKeyA( 00086 IN HKEY hKey, 00087 IN LPCSTR lpSubKey, 00088 OUT PHKEY phkResult); 00089 00090 LONG WINAPI 00091 RegQueryValueExA(HKEY Key, 00092 LPCSTR ValueName, 00093 PULONG Reserved, 00094 PULONG Type, 00095 PUCHAR Data, 00096 PSIZE_T DataSize); 00097 00098 LONG WINAPI 00099 RegSetValueExA( 00100 IN HKEY hKey, 00101 IN LPCSTR lpValueName OPTIONAL, 00102 ULONG Reserved, 00103 IN ULONG dwType, 00104 IN const UCHAR* lpData, 00105 IN ULONG cbData); 00106 00107 LONG WINAPI 00108 RegDeleteValueA(HKEY Key, 00109 LPCSTR ValueName); 00110 00111 LONG WINAPI 00112 RegDeleteKeyA(HKEY Key, 00113 LPCSTR Name); 00114 00115 USHORT 00116 RegGetSubKeyCount (HKEY Key); 00117 00118 ULONG 00119 RegGetValueCount (HKEY Key); 00120 00121 VOID 00122 RegInitializeRegistry(VOID); 00123 00124 VOID 00125 RegShutdownRegistry(VOID); 00126 00127 /* EOF */ Generated on Sun May 27 2012 04:17:08 for ReactOS by
1.7.6.1
|