ceregcreatekeyex (rapi)
Last changed: lwoodard@sstdevgroup.com-205.162.224.251

.
Summary
This function creates the specified key. If the key already exists in the registry, the function opens it.

C# Signature:

[DllImport("rapi.dll", CharSet=CharSet.Unicode)]
public static extern int CeRegCreateKeyEx(
    uint hKey,
    string lpKeyName,
    int lpReserved,
    string dwType,
    int dwOptions,
    int samDesired,
    int lpSecurityAttributes,
    out uint phkResult,
    out uint lpdwDisposition);

User-Defined Types:

uint HKEY_CLASSES_ROOT = 0x80000000;
uint HKEY_CURRENT_USER = 0x80000001;
uint HKEY_LOCAL_MACHINE = 0x80000002;
uint HKEY_USERS = 0x80000003;

Notes:

function info on msdn at http://msdn.microsoft.com/library/default.asp?url=/library/en-us/wceactsy/html/cerefCeRegCreateKeyExRAPI.asp

Tips & Tricks:

Please add some!

Sample Code:

uint key;
uint ret = CeRegOpenKeyEx(HKEY_LOCAL_MACHINE,"Software\\TestApp\\Settings",0,0x1,out key);

if(ret == 0)
{
    uint trash;
    uint key2;
    CeRegCreateKeyEx(key, "NewKey", 0, "", 0, 0, 0, out key2, out trash);

    CeRegCloseKey(key2);
}

CeRegCloseKey(key);

Alternative Managed API:

Documentation