// Call this method to get next subkey name. Name is stored in buffer specified in call to InitSubKeyEnumeration.
//
// Parameters:
// pdwActualSize - optional pointer to variable receiving actual size, in TCHARs, of key name. The count returned does not include the terminating null.
//
// Return value:
// If the method succeeds, the return value is ERROR_SUCCESS.
// If the method fails, the return value is a nonzero error code defined in winerror.h.
// If no more items available, return error is ERROR_NO_MORE_ITEMS.
LONGGetNextSubkeyName(DWORD*pdwActualSize=NULL);
// Call this method to get count of subkeys.
//
// Parameters:
// rdwSubkeyCount - reference to variable that receives subkey count.
//
// Return value:
// If the method succeeds, the return value is ERROR_SUCCESS.
// If the method fails, the return value is a nonzero error code defined in winerror.h.
LONGGetSubkeyCount(DWORD&rdwSubkeyCount);
// Call this method to get the length in TCHARs of longest value name, including terminating null.
//
// Parameters:
// rdwMaxValueNameBufferSize receives the length, in TCHARs, of the key's longest value name.
//
// Return value:
// If the method succeeds, the return value is ERROR_SUCCESS.
// If the method fails, the return value is a nonzero error code defined in winerror.h.
// Call this method to get next value name/data/type. Name/data/type is/are stored in buffer(s) specified in call to InitValueEnumeration.
//
// Parameters:
// pdwNameActualSize - optional pointer to variable receiving actual size, in TCHARs, of value name. The count returned includes the terminating null.
// pdwActualSize - optional pointer to variable receiving actual size, in bytes, of key name. The count returned does not include the terminating null.
//
// Return value:
// If the method succeeds, the return value is ERROR_SUCCESS.
// If the method fails, the return value is a nonzero error code defined in winerror.h.
// If no more items available, return error is ERROR_NO_MORE_ITEMS.
// rdwValueCount - reference to variable that receives value count.
//
// Return value:
// If the method succeeds, the return value is ERROR_SUCCESS.
// If the method fails, the return value is a nonzero error code defined in winerror.h.
LONGGetValueCount(DWORD&rdwValueCount);
// Call this method to get data and/or type of default value.
//
// Parameters:
// pdwType - optional pointer to variable receiving default value type. NULL if not requred.
// pbValueDataBuffer - optional pointer to buffer receiving default value data. NULL if not requred.
// dwValueDataBufferSize - size of buffer pointer by pbValueDataBuffer. Ignored if pbValueDataBuffer is NULL.
// pdwValueDataActualSize - optional pointer to variable receiving size, in bytes, of data stored into buffer. If pbValueDataBuffer is NULL, returned value is size of default value data, in bytes.
//
// Return value:
// If the method succeeds, the return value is ERROR_SUCCESS.
// If the method fails, the return value is a nonzero error code defined in winerror.h.