00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020 #ifndef _REGISTRY_REGISTRY_H_
00021 #define _REGISTRY_REGISTRY_H_
00022
00023 #include <stddef.h>
00024 #include <rtl/ustring.h>
00025 #include <registry/regtype.h>
00026 #include <registry/regdllapi.h>
00027
00028 #ifdef __cplusplus
00029 extern "C" {
00030 #endif
00031
00043 REG_DLLPUBLIC RegError REGISTRY_CALLTYPE reg_createKey(RegKeyHandle hKey,
00044 rtl_uString* keyName,
00045 RegKeyHandle* phNewKey);
00046
00047
00058 REG_DLLPUBLIC RegError REGISTRY_CALLTYPE reg_openKey(RegKeyHandle hKey,
00059 rtl_uString* keyName,
00060 RegKeyHandle* phOpenKey);
00061
00062
00063
00076 REG_DLLPUBLIC RegError REGISTRY_CALLTYPE reg_openSubKeys(RegKeyHandle hKey,
00077 rtl_uString* keyName,
00078 RegKeyHandle** pphSubKeys,
00079 sal_uInt32* pnSubKeys);
00080
00081
00089 REG_DLLPUBLIC RegError REGISTRY_CALLTYPE reg_closeSubKeys(RegKeyHandle* phSubKeys,
00090 sal_uInt32 nSubKeys);
00091
00092
00101 REG_DLLPUBLIC RegError REGISTRY_CALLTYPE reg_deleteKey(RegKeyHandle hKey,
00102 rtl_uString* keyName);
00103
00104
00111 REG_DLLPUBLIC RegError REGISTRY_CALLTYPE reg_closeKey(RegKeyHandle hKey);
00112
00113
00119 REG_DLLPUBLIC RegError REGISTRY_CALLTYPE reg_getKeyName(RegKeyHandle hKey, rtl_uString** pKeyName);
00120
00121
00134 REG_DLLPUBLIC RegError REGISTRY_CALLTYPE reg_setValue(RegKeyHandle hKey,
00135 rtl_uString* keyName,
00136 RegValueType valueType,
00137 RegValue pData,
00138 sal_uInt32 valueSize);
00139
00140
00150 REG_DLLPUBLIC RegError REGISTRY_CALLTYPE reg_setLongListValue(RegKeyHandle hKey,
00151 rtl_uString* keyName,
00152 sal_Int32* pValueList,
00153 sal_uInt32 len);
00154
00155
00165 REG_DLLPUBLIC RegError REGISTRY_CALLTYPE reg_setStringListValue(RegKeyHandle hKey,
00166 rtl_uString* keyName,
00167 sal_Char** pValueList,
00168 sal_uInt32 len);
00169
00170
00180 REG_DLLPUBLIC RegError REGISTRY_CALLTYPE reg_setUnicodeListValue(RegKeyHandle hKey,
00181 rtl_uString* keyName,
00182 sal_Unicode** pValueList,
00183 sal_uInt32 len);
00184
00185
00197 REG_DLLPUBLIC RegError REGISTRY_CALLTYPE reg_getValueInfo(RegKeyHandle hKey,
00198 rtl_uString* keyName,
00199 RegValueType* pValueType,
00200 sal_uInt32* pValueSize);
00201
00202
00213 REG_DLLPUBLIC RegError REGISTRY_CALLTYPE reg_getValue(RegKeyHandle hKey,
00214 rtl_uString* keyName,
00215 RegValue pData);
00216
00217
00227 REG_DLLPUBLIC RegError REGISTRY_CALLTYPE reg_getLongListValue(RegKeyHandle hKey,
00228 rtl_uString* keyName,
00229 sal_Int32** pValueList,
00230 sal_uInt32* pLen);
00231
00232
00242 REG_DLLPUBLIC RegError REGISTRY_CALLTYPE reg_getStringListValue(RegKeyHandle hKey,
00243 rtl_uString* keyName,
00244 sal_Char*** pValueList,
00245 sal_uInt32* pLen);
00246
00247
00257 REG_DLLPUBLIC RegError REGISTRY_CALLTYPE reg_getUnicodeListValue(RegKeyHandle hKey,
00258 rtl_uString* keyName,
00259 sal_Unicode*** pValueList,
00260 sal_uInt32* pLen);
00261
00262
00270 REG_DLLPUBLIC RegError REGISTRY_CALLTYPE reg_freeValueList(RegValueType valueType,
00271 RegValue pValueList,
00272 sal_uInt32 len);
00273
00284 REG_DLLPUBLIC RegError REGISTRY_CALLTYPE reg_getKeyType(RegKeyHandle hKey,
00285 rtl_uString* keyName,
00286 RegKeyType* pKeyType);
00287
00298 REG_DLLPUBLIC RegError REGISTRY_CALLTYPE reg_getResolvedKeyName(RegKeyHandle hKey,
00299 rtl_uString* keyName,
00300 sal_Bool firstLinkOnly,
00301 rtl_uString** pResolvedName);
00302
00315 REG_DLLPUBLIC RegError REGISTRY_CALLTYPE reg_loadKey(RegKeyHandle hKey,
00316 rtl_uString* keyName,
00317 rtl_uString* regFileName);
00318
00319
00332 REG_DLLPUBLIC RegError REGISTRY_CALLTYPE reg_saveKey(RegKeyHandle hKey,
00333 rtl_uString* keyName,
00334 rtl_uString* regFileName);
00335
00336
00352 REG_DLLPUBLIC RegError REGISTRY_CALLTYPE reg_mergeKey(RegKeyHandle hKey,
00353 rtl_uString* keyName,
00354 rtl_uString* regFileName,
00355 sal_Bool bWarnings,
00356 sal_Bool bReport);
00357
00358
00365 REG_DLLPUBLIC RegError REGISTRY_CALLTYPE reg_createRegistry(rtl_uString* registryName,
00366 RegHandle* phRegistry);
00367
00368
00375 REG_DLLPUBLIC RegError REGISTRY_CALLTYPE reg_openRootKey(RegHandle hRegistry,
00376 RegKeyHandle* phRootKey);
00377
00378
00385 REG_DLLPUBLIC RegError REGISTRY_CALLTYPE reg_getName(RegHandle hRegistry, rtl_uString** pName);
00386
00387
00393 REG_DLLPUBLIC sal_Bool REGISTRY_CALLTYPE reg_isReadOnly(RegHandle hReg);
00394
00395
00403 REG_DLLPUBLIC RegError REGISTRY_CALLTYPE reg_openRegistry(rtl_uString* registryName,
00404 RegHandle* phRegistry,
00405 RegAccessMode accessMode);
00406
00407
00413 REG_DLLPUBLIC RegError REGISTRY_CALLTYPE reg_closeRegistry(RegHandle hRegistry);
00414
00415
00423 REG_DLLPUBLIC RegError REGISTRY_CALLTYPE reg_destroyRegistry(RegHandle hRegistry,
00424 rtl_uString* registryName);
00425
00426
00434 REG_DLLPUBLIC RegError REGISTRY_CALLTYPE reg_dumpRegistry(RegKeyHandle hKey);
00435
00436 #ifdef __cplusplus
00437 }
00438 #endif
00439
00440 #endif
00441
00442