Older Newer
Sun, 03 Dec 2006 07:07:54 . . . . SyneRyder [Added table of error codes]


Changes by last author:

Added:
= getRegRoot =

== Syntax ==

:int getRegRoot(int * hkey)

== Arguments ==

:hkey

::Pointer to an integer value which will hold the root identification.

== Return ==

:Returns ERROR_SUCCESS if the operation was successful, otherwise it returns one of the following integer error codes:

||ERROR_SUCCESS||(==0) no error||

||ERROR_FILE_NOT_FOUND||key or value name not found||

||ERROR_MORE_DATA||buffer wasn't big enough (e.g., getRegString, getRegData)||

||ERROR_NO_MORE_ITEMS||index >= # of values or subkeys (enumRegValue, enumRegSubKey)||

||ERROR_INVALID_FUNCTION||bad top-level key, etc||

||ERROR_INVALID_DATA||wrong data type or size (or size > 2048)||

||ERROR_BADDB||registry database is corrupt||

||ERROR_BADKEY||registry key is invalid||

||ERROR_CANTOPEN||registry key could not be opened||

||ERROR_CANTREAD||registry key could not be read||

||ERROR_CANTWRITE||registry key could not be written||

||ERROR_REGISTRY_CORRUPT||registry is corrupt||

||ERROR_REGISTRY_IO_FAILED||input/output to registry failed||

||ERROR_KEY_DELETED||Illegal operation attempted on a Registry key which has been marked for deletion.||

||ERROR_KEY_HAS_CHILDREN||cannot delete a key with subkeys (Windows NT)||

== Description ==

:Gets the current registry root.

:Currently, only two types of registry roots are possible, identified by the constants (HKEY_LOCAL_MACHINE)? and (HKEY_CURRENT_USER)?.

== Example ==

<code>

// Check to see if we're working with HKEY_LOCAL_MACHINE

int * root;

getRegRoot(&root);

Info("Working with local machine: %s", (root == HKEY_LOCAL_MACHINE? "true" : "false"));

</code>

== Also see ==

:setRegRoot, getRegPath

== Comments ==

:Everyone can add his comments about his experiences with this function here. Tips for using it are welcome, too.