Module ida_registry
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.
Global variables
var ROOT_KEY_NAME
-
Default key used to store IDA settings in registry (Windows version).note: this name is automatically prepended to all key names passed to functionsin this file.
var reg_binary
-
binary data
var reg_dword
-
32-bit number
var reg_sz
-
utf8 string
var reg_unknown
-
unknown
Functions
def reg_data_type(*args) ‑> regval_type_t
-
reg_data_type(name, subkey=None) -> regval_type_tGet data type of a given value.name: (C++: const char *) value namesubkey: (C++: const char *) key namereturn: false if the [key+]value doesn't exist
def reg_delete(*args) ‑> bool
-
reg_delete(name, subkey=None) -> boolDelete a value from the registry.name: (C++: const char *) value namesubkey: (C++: const char *) parent keyreturn: success
def reg_delete_subkey(*args) ‑> bool
-
reg_delete_subkey(name) -> boolDelete a key from the registry.name: (C++: const char *) char const *
def reg_delete_tree(*args) ‑> bool
-
reg_delete_tree(name) -> boolDelete a subtree from the registry.name: (C++: const char *) char const *
def reg_exists(*args) ‑> bool
-
reg_exists(name, subkey=None) -> boolIs there already a value with the given name?name: (C++: const char *) value namesubkey: (C++: const char *) parent key
def reg_flush(*args) ‑> void
-
reg_flush()
def reg_load(*args) ‑> void
-
reg_load()
def reg_read_binary(*args) ‑> PyObject *
-
reg_read_binary(name, subkey=None) -> bytes or NoneRead binary data from the registry.name: (C++: const char *) value namesubkey: (C++: const char *) key namereturn: success
def reg_read_bool(*args) ‑> bool
-
reg_read_bool(name, defval, subkey=None) -> boolRead boolean value from the registry.name: (C++: const char *) value namedefval: (C++: bool) default valuesubkey: (C++: const char *) key namereturn: boolean read from registry, or 'defval' if the read failed
def reg_read_int(*args) ‑> int
-
reg_read_int(name, defval, subkey=None) -> intRead integer value from the registry.name: (C++: const char *) value namedefval: (C++: int) default valuesubkey: (C++: const char *) key namereturn: the value read from the registry, or 'defval' if the read failed
def reg_read_string(*args) ‑> PyObject *
-
reg_read_string(name, subkey=None, _def=None) -> strRead a string from the registry.name: (C++: const char *) value namesubkey: (C++: const char *) key namedef: char const *return: success
def reg_read_strlist(*args) ‑> qstrvec_t *
-
reg_read_strlist(subkey)Retrieve all string values associated with the given key. Also see reg_update_strlist().subkey: (C++: const char *) char const *
def reg_subkey_exists(*args) ‑> bool
-
reg_subkey_exists(name) -> boolIs there already a key with the given name?name: (C++: const char *) char const *
def reg_subkey_subkeys(*args) ‑> PyObject *
-
reg_subkey_subkeys(name) -> [str, ...]Get all subkey names of given key.name: (C++: const char *) char const *
def reg_subkey_values(*args) ‑> PyObject *
-
reg_subkey_values(name) -> [str, ...]Get all value names under given key.name: (C++: const char *) char const *
def reg_update_filestrlist(*args) ‑> void
-
reg_update_filestrlist(subkey, add, maxrecs, rem=None)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.subkey: (C++: const char *) char const *add: (C++: const char *) char const *maxrecs: (C++: size_t)rem: (C++: const char *) char const *
def reg_update_strlist(*args) ‑> void
-
reg_update_strlist(subkey, add, maxrecs, rem=None, ignorecase=False)Update list of strings associated with given key.subkey: (C++: const char *) key nameadd: (C++: const char *) string to be added to list, can be nullptrmaxrecs: (C++: size_t) limit list to this sizerem: (C++: const char *) string to be removed from list, can be nullptrignorecase: (C++: bool) ignore case for 'add' and 'rem'
def reg_write_binary(*args) ‑> PyObject *
-
reg_write_binary(name, py_bytes, subkey=None) -> PyObject *Write binary data to the registry.name: (C++: const char *) value namepy_bytes: PyObject *subkey: (C++: const char *) key name
def reg_write_bool(*args) ‑> void
-
reg_write_bool(name, value, subkey=None)Write boolean value to the registry.name: (C++: const char *) value namevalue: (C++: int) boolean to write (nonzero = true)subkey: (C++: const char *) key name
def reg_write_int(*args) ‑> void
-
reg_write_int(name, value, subkey=None)Write integer value to the registry.name: (C++: const char *) value namevalue: (C++: int) value to writesubkey: (C++: const char *) key name
def reg_write_string(*args) ‑> void
-
reg_write_string(name, utf8, subkey=None)Write a string to the registry.name: (C++: const char *) value nameutf8: (C++: const char *) utf8-encoded stringsubkey: (C++: const char *) key name
def set_registry_root(*args) ‑> bool
-
set_registry_root(name) -> boolname: char const *