putRegString

Syntax

int putRegString(int szString, int szValueName[, varargs]...)

Arguments

szString
is the address of the string to be stored
szValueName
is the name of the string to be retrieved, and may contain printf-style formatting codes as well as FM !-codes.
varargs
is a list of optional arguments used to perform printf-style formatting on the szValueName string.

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_FOUNDkey or value name not found
ERROR_MORE_DATAbuffer wasn't big enough (e.g., getRegString, getRegData)
ERROR_NO_MORE_ITEMSindex >= # of values or subkeys (enumRegValue, enumRegSubKey)
ERROR_INVALID_FUNCTIONbad top-level key, etc
ERROR_INVALID_DATAwrong data type or size (or size > 2048)
ERROR_BADDBregistry database is corrupt
ERROR_BADKEYregistry key is invalid
ERROR_CANTOPENregistry key could not be opened
ERROR_CANTREADregistry key could not be read
ERROR_CANTWRITEregistry key could not be written
ERROR_REGISTRY_CORRUPTregistry is corrupt
ERROR_REGISTRY_IO_FAILEDinput/output to registry failed
ERROR_KEY_DELETEDIllegal operation attempted on a Registry key which has been marked for deletion.
ERROR_KEY_HAS_CHILDRENcannot delete a key with subkeys (Windows NT)

Description

Stores a C-style character string in the Windows Registry. Currently, only two types of registry roots are possible, identified by the constants (HKEY_LOCAL_MACHINE)? and (HKEY_CURRENT_USER)?.

Comments

Note that this function does not work for REG_EXPAND_SZ strings, which are a different data type to standard REG_SZ strings.

Example

// Saves a title for your filter
// dialog box, and retrieves it
// on next invocation

// Save title for next time
putRegString("Filter #2", "Dialog title");

// Retrieve saved title
getRegString(str0, 256, "Dialog title");    
if (strcmp(str0,"") == 0) {
    // Title is null or missing
    // so set a default title
    strcpy(str0, "Default title");
}
// Set title for filter dialog
setDialogText(str0);

See Also

getRegRoot, setRegPath, getRegString