Función RegQueryMultipleValuesW (winreg.h)
Recupera el tipo y los datos de una lista de nombres de valor asociados a una clave del Registro abierta.
Sintaxis
LSTATUS RegQueryMultipleValuesW(
[in] HKEY hKey,
[out] PVALENTW val_list,
[in] DWORD num_vals,
[out, optional] LPWSTR lpValueBuf,
[in, out, optional] LPDWORD ldwTotsize
);
Parámetros
[in] hKey
Identificador de una clave del Registro abierta. La clave debe haberse abierto con el derecho de acceso KEY_QUERY_VALUE. Para obtener más información, consulte Derechos de acceso y seguridad de claves del Registro.
Este identificador lo devuelve el RegCreateKeyEx, RegCreateKeyTransacted, RegOpenKeyExo función RegOpenKeyTransacted. También puede ser una de las siguientes claves predefinidas:
- HKEY_CLASSES_ROOT
- HKEY_CURRENT_CONFIG
- HKEY_CURRENT_USER
- HKEY_LOCAL_MACHINE
- HKEY_PERFORMANCE_DATA
- HKEY_USERS
[out] val_list
Puntero a una matriz de estructuras VALENT que describen una o varias entradas de valor. En la entrada, el miembro ve_valuename de cada estructura debe contener un puntero al nombre de un valor que se va a recuperar. Se produce un error en la función si alguno de los valores especificados no existe en la clave especificada.
Si la función se ejecuta correctamente, cada elemento de la matriz contiene la información del valor especificado.
[in] num_vals
Número de elementos de la matriz val_list.
[out, optional] lpValueBuf
Puntero a un búfer. Si la función se realiza correctamente, el búfer recibe los datos de cada valor.
Si lpValueBuf es null, el valor al que apunta el parámetro ldwTotsize debe ser cero, en cuyo caso la función devuelve ERROR_MORE_DATA y ldwTotsize recibe el tamaño necesario del búfer, en bytes.
[in, out, optional] ldwTotsize
Puntero a una variable que especifica el tamaño del búfer al que apunta el parámetro lpValueBuf, en bytes. Si la función se ejecuta correctamente, ldwTotsize recibe el número de bytes copiados en el búfer. Si se produce un error en la función porque el búfer es demasiado pequeño, ldwTotsize recibe el tamaño necesario, en bytes.
Valor devuelto
Si la función se ejecuta correctamente, se ERROR_SUCCESS el valor devuelto.
Si se produce un error en la función, el valor devuelto es uno de los siguientes códigos de error.
Código devuelto | Descripción |
---|---|
|
RegQueryMultipleValues no puede crear instancias ni acceder al proveedor de la clave dinámica. |
|
El búfer al que apunta lpValueBuf era demasiado pequeño. En este caso, ldwTotsize recibe el tamaño de búfer necesario. |
|
El tamaño total de los datos solicitados (tamaño de la matriz de val_list + ldwTotSize) es mayor que el límite del sistema de un megabyte. |
Observaciones
La función regQueryMultipleValues
Si la clave de destino es una clave dinámica, su proveedor debe proporcionar todos los valores de forma atómica. Esto significa que el proveedor debe rellenar el búfer de resultados de forma sincrónica, lo que proporciona una vista coherente de todos los valores del búfer, a la vez que evita una serialización excesiva. El proveedor puede proporcionar como máximo un megabyte de datos de salida totales durante una llamada atómica a esta función.
RegQueryMultipleValues se admite de forma remota; es decir, el parámetro hKey pasado a la función puede hacer referencia a un equipo remoto.
Nota
El encabezado winreg.h define RegQueryMultipleValues como alias que selecciona automáticamente la versión ANSI o Unicode de esta función en función de la definición de la constante de preprocesador UNICODE. La combinación del uso del alias neutral de codificación con código que no es neutral de codificación puede dar lugar a errores de coincidencia que dan lugar a errores de compilación o tiempo de ejecución. Para obtener más información, vea Conventions for Function Prototypes.
Requisitos
Requisito | Valor |
---|---|
cliente mínimo admitido | Windows 2000 Professional [solo aplicaciones de escritorio] |
servidor mínimo admitido | Windows 2000 Server [solo aplicaciones de escritorio] |
de la plataforma de destino de |
Windows |
encabezado de |
winreg.h (incluya Windows.h) |
biblioteca de |
Advapi32.lib |
DLL de |
Advapi32.dll |
Consulte también
de información general del Registro de