Поделиться через


Функция ClusterRegQueryValue (clusapi.h)

Возвращает имя, тип и компоненты данных, связанные со значением открытого ключа базы данных кластера .

Синтаксис

LONG ClusterRegQueryValue(
  [in]                HKEY    hKey,
  [in]                LPCWSTR lpszValueName,
  [out, optional]     LPDWORD lpdwValueType,
  [out, optional]     LPBYTE  lpData,
  [in, out, optional] LPDWORD lpcbData
);

Параметры

[in] hKey

Дескриптор ключа базы данных кластера для запроса.

[in] lpszValueName

Указатель на строку Юникода с пустым завершением, содержащую имя запрашиваемого значения.

[out, optional] lpdwValueType

Указатель на тип значения ключа. Этот параметр может иметь значение NULL , если тип не является обязательным; В противном случае значение, возвращаемое с помощью этого параметра, является одним из следующих.

REG_BINARY (3)

Двоичные данные в любой форме.

REG_DWORD (4)

32-разрядное число.

REG_DWORD_BIG_ENDIAN (5)

32-разрядное число, хранящееся в формате big-endian.

REG_EXPAND_SZ (2)

Строка Юникода, завершающаяся null, которая содержит нерасширенные ссылки на переменные среды (например, "%PATH%").

REG_MULTI_SZ (6)

Последовательность строк, заканчивающихся значением NULL, которая завершается пустой строкой (\0).

Ниже представлен пример такого кода:

String1\0String2\0String3\0LastString\0\0

Первый \0 завершает первую строку, второй к последней \0 завершает последнюю строку, а последний \0 завершает последовательность. Обратите внимание, что окончательный признак конца должен учитываться в длине строки.

REG_NONE (0)

Нет определенного типа значения.

REG_QWORD (11)

64-разрядное число.

REG_SZ (1)

Строка Юникода, заканчивающаяся null.

[out, optional] lpData

Указатель на данные значения. Этот параметр может иметь значение NULL , если данные не требуются.

[in, out, optional] lpcbData

На входных данных указатель на количество байтов в буфере, на который указывает параметр lpbData . В выходных данных указатель на количество байтов в данных значения, которое помещается в содержимое lpbData , если вызывающий объект передает допустимый указатель.

Параметр lpbData может иметь значение NULL , только если lpbData также имеет значение NULL.

Возвращаемое значение

Функция возвращает одно из следующих значений.

Возвращаемый код или значение Описание
ERROR_SUCCESS
0 (0x0)
Операция выполнена успешно.
ERROR_MORE_DATA
234 (0xEA)
Буфер, на который указывает lpbData, недостаточно велик для хранения данных для значения. ClusterRegQueryValue сохраняет необходимый размер в содержимом lpbData.

Комментарии

Если lpbData имеет значение NULL, функция ClusterRegQueryValue возвращает ERROR_SUCCESS и сохраняет размер данных значения в содержимом lpbData. Эти сведения позволяют вызывающей объекту правильно выделить буфер для хранения данных.

Если lpdwValueType имеет значение REG_SZ, REG_MULTI_SZ или REG_EXPAND_SZ, то lpbData также включает признак конца NULL .

Требования

Требование Значение
Минимальная версия клиента Ни одна версия не поддерживается
Минимальная версия сервера Windows Server 2008 Корпоративная, Windows Server 2008 Datacenter
Целевая платформа Windows
Header clusapi.h
Библиотека ClusAPI.lib
DLL ClusAPI.dll

См. также раздел

ClusterRegOpenKey