Share via


REGCREATEKEY

5/10/2007

This command creates the specified registry key. If the key already exists in the registry, the command is ignored.

Syntax

9, [ErrorMode], hKey, [ExpandMode], Key, Options,
[SamDesired], [SecRev], [ExpandMode], [Inherit],[ExpandMode],[SecAttr],
[ExpandMode], [Class]

Parameters

  • ErrorMode
    Optional. Specified as a decimal representation of a hexadecimal bitmask. Values must be specified in decimal format. The following table shows the possible values.

    Value Name Description

    0 (0xnnnn0000)

    DAERH_ABORT

    Default. The abort-on-error mode stops the command file from processing further.

    32768 (0xnnnn8000)

    DAERH_IGNORE

    The ignore-on-error mode continues by processing the next command when an error occurs.

    32769-33023 (0x000080xx where xx!=00 is the number of retries)

    DAERH_RETRY_WITHIGNORE

    The retry-on-error with ignore mode retries the offending command up to 255 times. If the number of retries exceeds the retry count, this mode continues processing the next command.

    1-255(0x00xx where xx!=0 is the number of retries from 1-255)

    DAERH_RETRY_WITHABORT

    The retry-on-error with abort mode retries the offending command up to 255 times. If the number of retries exceeds the retry count, the command file processing halts.

    65536 – 4294901760(0xFFFFnnnn where FFFF is the delay mask in seconds)

    DAERH_DELAYMASK

    The delay error mode value is added to either the DAERH_RETRY_WITHIGNORE or the DAERH_RETRY_WITHABORT value to cause a delay between retries. This value is in seconds and has a range between 1 and 65535.

    Note

    Parsing errors, especially the passing of not valid command parameters, generates an error in DAERH_ABORT error mode. With logging enabled, an appropriate error message is output to the log file.

  • hKey
    Predefined registry handles. The following table shows the possible values.

    Value Name

    2147483648

    HKEY_CLASSES_ROOT

    2147483649

    HKEY_CURRENT_USER

    2147483650

    HKEY_LOCAL_MACHINE

    2147483651

    HKEY_USERS

    2147483652

    HKEY_PERFORMANCE_DATA

    2147483653

    HKEY_CURRENT_CONFIG

  • ExpandMode
    Optional. Specifies if the string that follows it is an environment variable that should be expanded. Can occur multiple times with this command. The following table shows the possible values.

    Value Description

    0

    Does not expand the string.

    1

    Device Update Agent expands the string on the embedded device.

    2

    Device Update Agent script compiler expands the string on the developer computer.

  • Key
    String specifying the name of a key that this function opens or creates. This key must be a subkey of the key identified by the hKey parameter.
  • SamDesired
    Optional. Access mask that specifies the desired access rights to the key. The following table shows the possible values, which can be combined.

    Value Name Description

    1

    KEY_QUERY_VALUE

    Permission to query subkey data.

    2

    KEY_SET_VALUE

    Permission to set subkey data.

    4

    KEY_CREATE_SUB_KEY

    Permission to create subkeys.

    8

    KEY_ENUMERATE_SUB_KEYS

    Permission to enumerate subkeys.

    16

    KEY_NOTIFY

    Permission for change notification.

    32

    KEY_CREATE_LINK

    Permission to create a symbolic link.

    131078

    KEY_WRITE

    Combines the STANDARD_RIGHTS_WRITE, KEY_SET_VALUE, and KEY_CREATE_SUB_KEY access rights.

    131097

    KEY_READ

    Combines the STANDARD_RIGHTS_READ, KEY_QUERY_VALUE, KEY_ENUMERATE_SUB_KEYS, and KEY_NOTIFY access rights.

    131097

    KEY_EXECUTE

    Permission for read access (= KEY_READ).

    983103

    KEY_ALL_ACCESS

    Combines the KEY_QUERY_VALUE, KEY_ENUMERATE_SUB_KEYS, KEY_NOTIFY, KEY_CREATE_SUB_KEY, KEY_CREATE_LINK, and KEY_SET_VALUE access rights, plus all the standard access rights except SYNCHRONIZE.

  • Class
    Optional. String that specifies the class or object type of this key. This parameter is ignored if the key already exists. No classes are currently defined; applications should pass a null string.

Remarks

For more information, see the Microsoft Windows SDK documentation at this Microsoft Web site.

Example

The following example shows typical use.

//
// RegCreateKey
//
REGCREATEKEY,, HKEY_LOCAL_MACHINE ,, SYSTEM\CurrentControlSet\SampleKey , DAREG_OPTION_NON_VOLATILE, KEY_ALL_ACCESS

See Also

Concepts

DUA Script Command Reference