00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00022 #ifndef AP_REGKEY_H
00023 #define AP_REGKEY_H
00024
00025 #if defined(WIN32) || defined(DOXYGEN)
00026
00027 #include "apr.h"
00028 #include "apr_pools.h"
00029 #include "ap_config.h"
00030
00031 #ifdef __cplusplus
00032 extern "C" {
00033 #endif
00034
00035 typedef struct ap_regkey_t ap_regkey_t;
00036
00037
00038
00039 AP_DECLARE(const ap_regkey_t *) ap_regkey_const(int i);
00040
00044 #define AP_REGKEY_CLASSES_ROOT ap_regkey_const(0)
00045 #define AP_REGKEY_CURRENT_CONFIG ap_regkey_const(1)
00046 #define AP_REGKEY_CURRENT_USER ap_regkey_const(2)
00047 #define AP_REGKEY_LOCAL_MACHINE ap_regkey_const(3)
00048 #define AP_REGKEY_USERS ap_regkey_const(4)
00049 #define AP_REGKEY_PERFORMANCE_DATA ap_regkey_const(5)
00050 #define AP_REGKEY_DYN_DATA ap_regkey_const(6)
00051
00055 #define AP_REGKEY_EXPAND 0x0001
00056
00080 AP_DECLARE(apr_status_t) ap_regkey_open(ap_regkey_t **newkey,
00081 const ap_regkey_t *parentkey,
00082 const char *keyname,
00083 apr_int32_t flags,
00084 apr_pool_t *pool);
00085
00090 AP_DECLARE(apr_status_t) ap_regkey_close(ap_regkey_t *key);
00091
00110 AP_DECLARE(apr_status_t) ap_regkey_remove(const ap_regkey_t *parent,
00111 const char *keyname,
00112 apr_pool_t *pool);
00113
00124 AP_DECLARE(apr_status_t) ap_regkey_value_get(char **result,
00125 ap_regkey_t *key,
00126 const char *valuename,
00127 apr_pool_t *pool);
00128
00138 AP_DECLARE(apr_status_t) ap_regkey_value_set(ap_regkey_t *key,
00139 const char *valuename,
00140 const char *value,
00141 apr_int32_t flags,
00142 apr_pool_t *pool);
00143
00152 AP_DECLARE(apr_status_t) ap_regkey_value_raw_get(void **result,
00153 apr_size_t *resultsize,
00154 apr_int32_t *resulttype,
00155 ap_regkey_t *key,
00156 const char *valuename,
00157 apr_pool_t *pool);
00158
00169 AP_DECLARE(apr_status_t) ap_regkey_value_raw_set(ap_regkey_t *key,
00170 const char *valuename,
00171 const void *value,
00172 apr_size_t valuesize,
00173 apr_int32_t valuetype,
00174 apr_pool_t *pool);
00175
00183 AP_DECLARE(apr_status_t) ap_regkey_value_array_get(apr_array_header_t **result,
00184 ap_regkey_t *key,
00185 const char *valuename,
00186 apr_pool_t *pool);
00187
00196 AP_DECLARE(apr_status_t) ap_regkey_value_array_set(ap_regkey_t *key,
00197 const char *valuename,
00198 int nelts,
00199 const char * const * elts,
00200 apr_pool_t *pool);
00201
00208 AP_DECLARE(apr_status_t) ap_regkey_value_remove(const ap_regkey_t *key,
00209 const char *valuename,
00210 apr_pool_t *pool);
00211
00212 #ifdef __cplusplus
00213 }
00214 #endif
00215
00216 #endif
00217
00218 #endif