Windows - статьи




Программирование для системного реестра на С++ - часть 5


Рассмотрим функцию, которая позволяет получать информацию о разделе реестра.

LONG RegQueryInfoKey(HKEY hKey, LPTSTR lpClass, LPDWORD lpcClass, LPDWORD lpReserved, LPDWORD lpcSubKeys, LPDWORD lpcMaxSubKeyLen, LPDWORD lpcMaxClassLen, LPDWORD lpcValues, LPDWORD lpcMaxValueNameLen, LPDWORD lpcMaxValueLen, LPDWORD lpcbSecurityDescriptor, PFILETIME lpftLastWriteTime);

  • hKey Описатель открытого раздела. Раздел должен быть открыт с правами KEY_QUERY_VALUE.
  • lpClass Указатель на строку, завершающуюся нулевым байтом, которая содержит класс этого раздела. Может быть проигнорирован и равен NULL. Используется для подключения к удаленному реестру.
  • lpсClass Указатель на переменную, которая содержит размер буфера, на которую указывает lpClass. Размер должен включать и завершающий нулевой символ. После того, как функция возвратит значение, в этой переменной будет сохранена информация о размере буфера-приемника - lpClass. Возвращаемое значение не включает нулевой символ. Если буфер является недостаточным для сохранения данных, то функция возвращает значение ERROR_MORE_DATA и переменная содержит размер строки в байтах, нулевой символ не учитывается. Если параметр lpClass содержит правильный адрес, но lpсClass является неверным, например NULL, то функция возвращает ERROR_INVALID_PARAMETER. В Windows Me/98/95 если параметр lpClass содержит правильный адрес, но lpсClass является неверным, например NULL, то функция возвращает ERROR_SUCCESS, вместо ERROR_INVALID_PARAMETER.
  • lpReserved Зарезервировано - должен быть NULL.
  • lpcSubKeys Указатель на переменную, получающую кол-во подразделов данного раздела. Может быть - NULL.
  • lpcMaxSubKeyLen Указатель на переменную, которая получает размер самого длинного имени подраздела данного раздела, нулевой символ не включается. Может быть NULL. В Windows Me/98/95 размер включает и нулевой символ.
  • lpcMaxClassLen Указатель на переменную, которая получает размер самой длинной строки, которая определяет класс подраздела. Возвращаемый размер не включает нулевой байт.
  • lpcValues Указатель на переменную, которая получает число параметров данного раздела.


    Содержание  Назад  Вперед