Función RegQueryValueA (winreg.h)
Recupera los datos asociados al valor predeterminado o sin nombre de una clave del Registro especificada. Los datos deben ser un cadena terminadanull.
Sintaxis
LSTATUS RegQueryValueA(
[in] HKEY hKey,
[in, optional] LPCSTR lpSubKey,
[out, optional] LPSTR lpData,
[in, out, optional] PLONG lpcbData
);
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_USERS
[in, optional] lpSubKey
Nombre de la subclave del parámetro hKey para el que se recupera el valor predeterminado.
Los nombres de clave no distinguen mayúsculas de minúsculas.
Si este parámetro es NULL o apunta a una cadena vacía, la función recupera el valor predeterminado de la clave identificada por hKey.
Para obtener más información, consulte límites de tamaño de elemento del Registro .
[out, optional] lpData
Puntero a un búfer que recibe el valor predeterminado de la clave especificada.
Si lpValue es NULL y lpcbValue no esNULL, la función devuelve ERROR_SUCCESS y almacena el tamaño de los datos, en bytes, en la variable a la que apunta lpcbValue. Esto permite a una aplicación determinar la mejor manera de asignar un búfer para los datos del valor.
[in, out, optional] lpcbData
Puntero a una variable que especifica el tamaño del búfer al que apunta el parámetro lpValue, en bytes. Cuando la función devuelve, esta variable contiene el tamaño de los datos copiados en lpValue, incluido cualquier terminación caracteres null.
Si los datos tienen el tipo REG_SZ, REG_MULTI_SZ o REG_EXPAND_SZ, este tamaño incluye cualquier terminación carácter o caracteres nulos caracteres. Para obtener más información, vea Comentarios.
Si el búfer especificado lpValue no es lo suficientemente grande como para contener los datos, la función devuelve ERROR_MORE_DATA y almacena el tamaño de búfer necesario en la variable a la que apunta lpcbValue. En este caso, el contenido del búfer de lpValue no está definido.
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 un código de error del sistema .
Si el búfer de lpValue es demasiado pequeño para recibir el valor, la función devuelve ERROR_MORE_DATA.
Observaciones
Si se usa la versión ANSI de esta función (ya sea llamando explícitamente a RegQueryValueA o no definiendo UNICODE antes de incluir el archivo Windows.h), esta función convierte la cadena Unicode almacenada en una cadena ANSI antes de copiarla en el búfer especificado por el parámetro lpValue.
Si los datos tienen el tipo REG_SZ, REG_MULTI_SZ o REG_EXPAND_SZ, es posible que la cadena no se haya almacenado con los caracteres-terminados
Tenga en cuenta que las operaciones que acceden a determinadas claves del Registro se redirigen. Para obtener más información, vea de virtualización del Registro y datos de aplicación de 32 y 64 bits en el Registro.
Nota
El encabezado winreg.h define RegQueryValue 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
RegQueryInfoKey de
de información general del Registro de