template<class character>
int query_multiple_registry_values(handle key,
                                   value_entry* value_entry_list,
                                   unsigned values,
                                   character* value_buffer,
                                   unsigned* total_size)

This function obtains the data and type of a list of values.


handle key

The handle of the key whose values are being queried.

value_entry* value_entry_list

A pointer to an array of value entries - one for each value being queried.

unsigned values

The number of values whose data and type are being queried.

character* value_buffer

A pointer to a buffer to receive the data associated with the values mentioned in the value entry array. If this parameter is null, the next parameter provides an indicator of the required buffer size.

unsigned* Totalsize

A pointer to a variable holding the size of the buffer pointed to by the previous parameter. If the function succeeds, the variable is updated to contain the number of bytes copied to the buffer provided. If the function fails because the buffer is too small, the variable is updated to contain the required buffer size.



0 The function succeeded.
Other The call failed - a Win32 error code is returned.


If any one of the named values does not exist, an error is flagged.

If the specified buffer is not large enough to contain the data, an error is flagged.

The key for which this method is called can exist on a remote computer.

The access key_access::query_value is required for the key. The access key_access::Read includes access key_access::query_value.