Registry related functions. More...
Macros | |
#define | ROOT_KEY_NAME "Software\\Hex-Rays\\IDA" |
Default key used to store IDA settings in registry (Windows version). More... | |
Enumerations | |
enum | regval_type_t { reg_unknown = 0 , reg_sz = 1 , reg_binary = 3 , reg_dword = 4 } |
Types of values stored in the registry. More... | |
Functions | |
idaman THREAD_SAFE bool ida_export | reg_delete_subkey (const char *name) |
Delete a key from the registry. | |
idaman THREAD_SAFE bool ida_export | reg_delete_tree (const char *name) |
Delete a subtree from the registry. | |
idaman THREAD_SAFE bool ida_export | reg_delete (const char *name, const char *subkey=nullptr) |
Delete a value from the registry. More... | |
idaman THREAD_SAFE bool ida_export | reg_subkey_exists (const char *name) |
Is there already a key with the given name? | |
idaman THREAD_SAFE bool ida_export | reg_exists (const char *name, const char *subkey=nullptr) |
Is there already a value with the given name? More... | |
idaman THREAD_SAFE bool ida_export | reg_subkey_children (qstrvec_t *out, const char *name, bool subkeys) |
Retrieve the child names of the given key. More... | |
idaman THREAD_SAFE bool ida_export | reg_data_type (regval_type_t *out, const char *name, const char *subkey=nullptr) |
Get data type of a given value. More... | |
idaman THREAD_SAFE void ida_export | reg_read_strlist (qstrvec_t *list, const char *subkey) |
Retrieve all string values associated with the given key. More... | |
idaman THREAD_SAFE void ida_export | reg_update_strlist (const char *subkey, const char *add, size_t maxrecs, const char *rem=nullptr, bool ignorecase=false) |
Update list of strings associated with given key. More... | |
THREAD_SAFE void | reg_write_binary (const char *name, const void *data, size_t datalen, const char *subkey=nullptr) |
Write binary data to the registry. More... | |
THREAD_SAFE void | reg_write_binary (const char *name, const bytevec_t &data, const char *subkey=nullptr) |
Write binary data to the registry. More... | |
THREAD_SAFE bool | reg_read_binary (const char *name, void *data, size_t datalen, const char *subkey=nullptr) |
Read binary data from the registry. More... | |
THREAD_SAFE bool | reg_read_binary_part (const char *name, void *data, size_t datalen, const char *subkey=nullptr) |
Read a chunk of binary data from the registry. More... | |
THREAD_SAFE bool | reg_read_binary (const char *name, bytevec_t *data, const char *subkey=nullptr) |
Read binary data from the registry. More... | |
THREAD_SAFE void | reg_write_string (const char *name, const char *utf8, const char *subkey=nullptr) |
Write a string to the registry. More... | |
THREAD_SAFE bool | reg_read_string (qstring *utf8, const char *name, const char *subkey=nullptr) |
Read a string from the registry. More... | |
THREAD_SAFE int | reg_read_int (const char *name, int defval, const char *subkey=nullptr) |
Read integer value from the registry. More... | |
THREAD_SAFE void | reg_write_int (const char *name, int value, const char *subkey=nullptr) |
Write integer value to the registry. More... | |
THREAD_SAFE bool | reg_read_bool (const char *name, bool defval, const char *subkey=nullptr) |
Read boolean value from the registry. More... | |
THREAD_SAFE void | reg_write_bool (const char *name, int value, const char *subkey=nullptr) |
Write boolean value to the registry. More... | |
THREAD_SAFE bool | reg_subkey_subkeys (qstrvec_t *out, const char *name) |
Get all subkey names of given key. | |
THREAD_SAFE bool | reg_subkey_values (qstrvec_t *out, const char *name) |
Get all value names under given key. | |
THREAD_SAFE void | reg_update_filestrlist (const char *subkey, const char *add, size_t maxrecs, const char *rem=nullptr) |
Update registry with a file list. More... | |
Detailed Description
Registry related functions.
IDA uses the registry to store global configuration options that must persist after IDA has been closed.
On Windows, IDA uses the Windows registry directly. On Unix systems, the registry is stored in a file (typically ~/.idapro/ida.reg).
The root key for accessing IDA settings in the registry is defined by ROOT_KEY_NAME.
Macro Definition Documentation
◆ ROOT_KEY_NAME
#define ROOT_KEY_NAME "Software\\Hex-Rays\\IDA" |
Default key used to store IDA settings in registry (Windows version).
- Note
- this name is automatically prepended to all key names passed to functions in this file.
Enumeration Type Documentation
◆ regval_type_t
enum regval_type_t |
Function Documentation
◆ reg_delete()
idaman THREAD_SAFE bool ida_export reg_delete | ( | const char * | name, |
const char * | subkey = nullptr |
||
) |
Delete a value from the registry.
- Parameters
-
name value name subkey parent key
- Returns
- success
◆ reg_exists()
idaman THREAD_SAFE bool ida_export reg_exists | ( | const char * | name, |
const char * | subkey = nullptr |
||
) |
Is there already a value with the given name?
- Parameters
-
name value name subkey parent key
◆ reg_subkey_children()
idaman THREAD_SAFE bool ida_export reg_subkey_children | ( | qstrvec_t * | out, |
const char * | name, | ||
bool | subkeys | ||
) |
Retrieve the child names of the given key.
- Parameters
-
out result name key name subkeys if true, collect subkey names. if false, collect value names.
- Returns
- false if the given key does not exist
◆ reg_data_type()
idaman THREAD_SAFE bool ida_export reg_data_type | ( | regval_type_t * | out, |
const char * | name, | ||
const char * | subkey = nullptr |
||
) |
Get data type of a given value.
- Parameters
-
out result name value name subkey key name
- Returns
- false if the [key+]value doesn't exist
◆ reg_read_strlist()
idaman THREAD_SAFE void ida_export reg_read_strlist | ( | qstrvec_t * | list, |
const char * | subkey | ||
) |
Retrieve all string values associated with the given key.
Also see reg_update_strlist().
◆ reg_update_strlist()
idaman THREAD_SAFE void ida_export reg_update_strlist | ( | const char * | subkey, |
const char * | add, | ||
size_t | maxrecs, | ||
const char * | rem = nullptr , |
||
bool | ignorecase = false |
||
) |
Update list of strings associated with given key.
- Parameters
-
subkey key name add string to be added to list, can be nullptr maxrecs limit list to this size rem string to be removed from list, can be nullptr ignorecase ignore case for 'add' and 'rem'
◆ reg_write_binary() [1/2]
|
inline |
Write binary data to the registry.
- Parameters
-
name value name data input, must not be nullptr datalen length of input in bytes subkey key name
◆ reg_write_binary() [2/2]
|
inline |
Write binary data to the registry.
- Parameters
-
name value name data input data (as byte vector) subkey key name
◆ reg_read_binary() [1/2]
|
inline |
Read binary data from the registry.
- Parameters
-
name value name [out] data result, must not be nullptr datalen length of out buffer in bytes subkey key name
- Returns
- false if 'data' is not large enough to hold all data present. in this case 'data' is left untouched.
◆ reg_read_binary_part()
|
inline |
Read a chunk of binary data from the registry.
This function succeeds even in the case of a partial read.
- Parameters
-
name value name [out] data result, must not be nullptr datalen length of output buffer in bytes subkey key name
- Returns
- success
◆ reg_read_binary() [2/2]
|
inline |
Read binary data from the registry.
- Parameters
-
name value name [out] data output buffer, must not be nullptr subkey key name
- Returns
- success
◆ reg_write_string()
|
inline |
Write a string to the registry.
- Parameters
-
name value name utf8 utf8-encoded string subkey key name
◆ reg_read_string()
|
inline |
Read a string from the registry.
- Parameters
-
[out] utf8 output buffer name value name subkey key name
- Returns
- success
◆ reg_read_int()
|
inline |
Read integer value from the registry.
- Parameters
-
name value name defval default value subkey key name
- Returns
- the value read from the registry, or 'defval' if the read failed
◆ reg_write_int()
|
inline |
Write integer value to the registry.
- Parameters
-
name value name value value to write subkey key name
◆ reg_read_bool()
|
inline |
Read boolean value from the registry.
- Parameters
-
name value name defval default value subkey key name
- Returns
- boolean read from registry, or 'defval' if the read failed
◆ reg_write_bool()
|
inline |
Write boolean value to the registry.
- Parameters
-
name value name value boolean to write (nonzero = true) subkey key name
◆ reg_update_filestrlist()
|
inline |
Update registry with a file list.
Case sensitivity will vary depending on the target OS.
- Note
- 'add' and 'rem' must be UTF-8, just like for regular string operations.
Generated by