UDK 3.2.7 C/C++ API Reference
Defines | Typedefs | Enumerations
registry/regtype.h File Reference
#include <sal/types.h>
#include <sal/udkversion.h>

Go to the source code of this file.

Defines

#define LIBRARY_VERSION   SAL_UDK_MAJOR
#define REG_READONLY   0x0001
 Flag to specify the open mode of a registry. This mode allows readonly access.
#define REG_READWRITE   0x0002
 Flag to specify the open mode of a registry. This mode allows read and write access.
#define REGISTRY_CALLTYPE   SAL_CALL
 specify the calling convention for the registry API

Typedefs

typedef void * RegHandle
 defines the type of a registry handle used in the C API.
typedef void * RegKeyHandle
 defines the type of a registry key handle used in the C API.
typedef void * RegValue
 defines the type of a registry key value handle used in the C API.
typedef sal_uInt16 RegAccessMode
 defines the open/access mode of the registry.

Enumerations

enum  RegKeyType { RG_KEYTYPE, RG_LINKTYPE }
 defines the type of a registry key. More...
enum  RegValueType {
  RG_VALUETYPE_NOT_DEFINED, RG_VALUETYPE_LONG, RG_VALUETYPE_STRING, RG_VALUETYPE_UNICODE,
  RG_VALUETYPE_BINARY, RG_VALUETYPE_LONGLIST, RG_VALUETYPE_STRINGLIST, RG_VALUETYPE_UNICODELIST
}
 defines the type of a key value. More...
enum  RegError {
  REG_NO_ERROR, REG_INTERNAL_ERROR, REG_REGISTRY_NOT_OPEN, REG_REGISTRY_NOT_EXISTS,
  REG_REGISTRY_READONLY, REG_DESTROY_REGISTRY_FAILED, REG_CANNOT_OPEN_FOR_READWRITE, REG_INVALID_REGISTRY,
  REG_KEY_NOT_OPEN, REG_KEY_NOT_EXISTS, REG_CREATE_KEY_FAILED, REG_DELETE_KEY_FAILED,
  REG_INVALID_KEYNAME, REG_INVALID_KEY, REG_VALUE_NOT_EXISTS, REG_SET_VALUE_FAILED,
  REG_DELETE_VALUE_FAILED, REG_INVALID_VALUE, REG_MERGE_ERROR, REG_MERGE_CONFLICT,
  REG_DETECT_RECURSION, REG_INVALID_LINK, REG_INVALID_LINKNAME, REG_INVALID_LINKTARGET,
  REG_LINKTARGET_NOT_EXIST, REG_BUFFERSIZE_TOSMALL
}
 specifies the possible error codes which can occur using the registry API. More...

Define Documentation

#define LIBRARY_VERSION   SAL_UDK_MAJOR
#define REG_READONLY   0x0001

Flag to specify the open mode of a registry. This mode allows readonly access.

#define REG_READWRITE   0x0002

Flag to specify the open mode of a registry. This mode allows read and write access.

#define REGISTRY_CALLTYPE   SAL_CALL

specify the calling convention for the registry API


Typedef Documentation

typedef sal_uInt16 RegAccessMode

defines the open/access mode of the registry.

Two modes are valid: -REG_READONLY allows readonly access -REG_READWRITE allows read and write access

typedef void* RegHandle

defines the type of a registry handle used in the C API.

typedef void* RegKeyHandle

defines the type of a registry key handle used in the C API.

typedef void* RegValue

defines the type of a registry key value handle used in the C API.


Enumeration Type Documentation

enum RegError

specifies the possible error codes which can occur using the registry API.

Enumerator:
REG_NO_ERROR 

no error.

REG_INTERNAL_ERROR 

internal registry error.

REG_REGISTRY_NOT_OPEN 

registry is not open.

REG_REGISTRY_NOT_EXISTS 

registry does not exists.

REG_REGISTRY_READONLY 

registry is open with readonly access rights.

REG_DESTROY_REGISTRY_FAILED 

destroy a registry failed. There are may be any open keys.

REG_CANNOT_OPEN_FOR_READWRITE 

registry cannot be opened with readwrite access because the registry is already open with readwrite access anywhere.

REG_INVALID_REGISTRY 

registry is in an invalid state or the registry does not point to a valid registry data file.

REG_KEY_NOT_OPEN 

the key or key handle points to an invalid key or closed key.

REG_KEY_NOT_EXISTS 

the specified keyname points to a nonexisting key.

REG_CREATE_KEY_FAILED 

the key with the specified keyname cannot be created.

REG_DELETE_KEY_FAILED 

the specified key cannot be deleted. Maybe an open key handle exists to this key.

REG_INVALID_KEYNAME 

the keyname is invalid.

This error will return if the keyname is NULL but should not be NULL in the context of a called function.

REG_INVALID_KEY 

the key is not in a valid state.

REG_VALUE_NOT_EXISTS 

the key has no value

REG_SET_VALUE_FAILED 

setting the specified value of a key failed.

REG_DELETE_VALUE_FAILED 

deleting of the key value failed.

REG_INVALID_VALUE 

the key has a invalid value or the value type is unknown.

REG_MERGE_ERROR 

merging a key, the value and all subkeys failed.

REG_MERGE_CONFLICT 

conflicts exists during the merge process of a key.

This could happen if the value of a key already exists and the merge process will replace it.

REG_DETECT_RECURSION 

a recursion was detected resolving different link targets (no longer used).

REG_INVALID_LINK 

the link is invalid and can not be resolved (now used by all link-related operations, as links are no longer supported).

REG_INVALID_LINKNAME 

the specified linkname is not valid (no longer used).

REG_INVALID_LINKTARGET 

the linknane is not valid (no longer used).

REG_LINKTARGET_NOT_EXIST 

the link target points to a nonexisting key (no longer used).

REG_BUFFERSIZE_TOSMALL 

the reserved buffer for the resolved keyname is to small.

enum RegKeyType

defines the type of a registry key.

The registry differs between normal keys which can contain subkeys or a value and link keys which navigate over the linktarget to an existing other key (which are no longer supported).

Enumerator:
RG_KEYTYPE 

represents a real key

RG_LINKTYPE 

represents a link (which is no longer supported)

defines the type of a key value.

A registry key can contain a value which has one of seven different types. Three simple types (long, ascii and unicode string) and a list type of these simple types. Furthermore a binary type which provides the possibilty to define own data structures and store these types in the registry. The UNO core reflection data is stored as a binary blob in the type registry.

Enumerator:
RG_VALUETYPE_NOT_DEFINED 

The key has no value or the value type is unknown.

RG_VALUETYPE_LONG 

The key has a value of type long.

RG_VALUETYPE_STRING 

The key has a value of type ascii string.

RG_VALUETYPE_UNICODE 

The key has a value of type unicode string.

RG_VALUETYPE_BINARY 

The key has a value of type binary.

RG_VALUETYPE_LONGLIST 

The key has a value of type long list.

RG_VALUETYPE_STRINGLIST 

The key has a value of type ascii string list.

RG_VALUETYPE_UNICODELIST 

The key has a value of type unicode string list.

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines