Sets the data for the specified value in the specified registry key and subkey.
Syntax
LONG WINAPI RegSetKeyValue(
__in HKEY hKey,
__in_opt LPCTSTR lpSubKey,
__in_opt LPCTSTR lpValueName,
__in DWORD dwType,
__in_opt LPCVOID lpData,
__in DWORD cbData
);
Parameters
- hKey [in]
-
A handle to an open registry key. The key must have been opened with the KEY_SET_VALUE access right. For more information, see
Registry Key Security and Access Rights.
This handle is returned by the
RegCreateKeyEx, RegCreateKeyTransacted, RegOpenKeyEx, or
RegOpenKeyTransacted function. It can also be one of the following
predefined keys:
HKEY_CLASSES_ROOT
HKEY_CURRENT_CONFIG
HKEY_CURRENT_USER
HKEY_LOCAL_MACHINE
HKEY_USERS
- lpSubKey [in, optional]
-
The name of a key. This key must be a subkey of the key identified by the hKey parameter.
- lpValueName [in, optional]
-
The name of the registry value whose data is to be updated.
- dwType [in]
-
The type of data pointed to by the lpData parameter. For a list of the possible types, see
Registry Value Types.
- lpData [in, optional]
-
The data to be stored with the specified value name.
For string-based types, such as REG_SZ, the string must be null-terminated. With the REG_MULTI_SZ data type, the string must be terminated with two null characters.
- cbData [in]
-
The size of the information pointed to by the lpData parameter, in bytes. If the data is of type REG_SZ, REG_EXPAND_SZ, or REG_MULTI_SZ, cbData must include the size of the terminating null character or characters.
Return Value
If the function succeeds, the return value is ERROR_SUCCESS.
If the function fails, the return value is a nonzero error code defined in Winerror.h. You can use the
FormatMessage function with the FORMAT_MESSAGE_FROM_SYSTEM flag to get a generic description of the error.
Remarks
To compile an application that uses this function, define _WIN32_WINNT as 0x0600 or later. For more information, see
Using the Windows Headers.
Requirements
| Minimum supported client | Windows Vista |
| Minimum supported server | Windows Server 2008 |
| Header | Winreg.h (include Windows.h) |
| Library | Advapi32.lib |
| DLL | Advapi32.dll |
| Unicode and ANSI names | RegSetKeyValueW (Unicode) and RegSetKeyValueA (ANSI) |
See Also
- RegDeleteKeyValue
- Registry Functions
Send comments about this topic to Microsoft
Build date: 5/14/2009