CreateKey method of the StdRegProv Class
Applies to: desktop apps only
The CreateKey method creates a subkey in the specified tree.
This topic uses Managed Object Format (MOF) syntax. For more information about using this method, see Calling a Method.
Syntax
void CreateKey( [in, optional] uint32 hDefKey = HKEY_LOCAL_MACHINE, [in] String sSubKeyName );
Parameters
- hDefKey [in, optional]
-
A registry tree, also known as a hive, that contains the sSubKeyName path. The default value is HKEY_LOCAL_MACHINE.
Be aware that HKEY_DYN_DATA is only a valid tree for Windows 95 and Windows 98 computers.
The following trees are defined in Winreg.h.
- HKEY_CLASSES_ROOT (2147483648 (0x80000000))
- HKEY_CURRENT_USER (2147483649 (0x80000001))
- HKEY_LOCAL_MACHINE (2147483650 (0x80000002))
- HKEY_USERS (2147483651 (0x80000003))
- HKEY_CURRENT_CONFIG (2147483653 (0x80000005))
- HKEY_DYN_DATA (2147483654 (0x80000006))
- sSubKeyName [in]
-
The key to be created. The CreateKey method creates all subkeys specified in the path that do not exist. For example, if MyKey and MySubKey do not exist in the following path, the CreateKey method creates both keys: HKEY_CURRENT_USER\SOFTWARE\MyKey\MySubKey.
Return value
In C++, the method returns a uint32 value that is 0 (zero) if successful. If the function fails, the return value is a nonzero error code that is defined in Winerror.h. In C++, use the FormatMessage function with the FORMAT_MESSAGE_FROM_SYSTEM flag to get a generic description of the error. You can also look up return values under the WMI Error Constants.
In scripting or Visual Basic, the method returns an integer value that is 0 (zero) if successful. If the function fails, the return value is a nonzero error code that you can look up in WbemErrorEnum.
Examples
For script code examples, see WMI Tasks for Scripts and Applications and the TechNet ScriptCenter Script Repository. Other examples are in books and articles listed in Further Information.
For C++ code examples, see WMI C++ Application Examples.
The following VBScript code example shows how to use the CreateKey method to create the MyKey and MySubKey subkeys under HKEY_CURRENT_USER\SOFTWARE.
const HKEY_LOCAL_MACHINE = &H80000002 strComputer = "." Set objReg=GetObject("winmgmts:{impersonationLevel=impersonate}!\\"&_ strComputer & "\root\default:StdRegProv") KeyPath = "Software\MyKey\MySubKey" Return = objReg.CreateKey(HKEY_LOCAL_MACHINE, KeyPath) If (Return = 0) And (Err.Number = 0) Then Wscript.Echo "HKEY_LOCAL_MACHINE\Software\MyKey\MySubKey created" Else Wscript.Echo "CreateKey failed. Error = " & Err.Number End If
Requirements
|
Minimum supported client | Windows 2000 Professional |
|---|---|
|
Minimum supported server | Windows 2000 Server |
|
Namespace |
\root\default |
|
MOF |
|
|
DLL |
|
See also
Send comments about this topic to Microsoft
Build date: 3/9/2012