Если вам неоднократно приходилось пользоваться инструкциями с применением твиков реестра, то наверняка вы заметили, что используются в них два типа параметров – строковый и DWORD. И только в редких случаях вас могут попросить создать параметр REG_BINARY, предоставив готовый набор данных в соответствующем формате. А теперь давайте на минуту представим, что вам нужно создать такой двоичный параметр.
Со значением, представленном в «аналоговом» виде.
Для чего нужен REG_BINARY
В этом нет ничего сложного, но перед тем как перейти к демонстрации работы с параметрами этого типа, позвольте сказать пару слов о том, для чего они вообще нужны и чем они отличаются от тех же строковых и DWORD параметров.
В Windows REG_BINARY используются для хранения информации, объем которой превышает размер максимально допустимых значений REG_SIZE и DWORD. Кстати, большая часть сведений об аппаратных компонентах компьютера хранится как раз в записях REG_BINARY. А еще они могут хранить не только текст, но также изображения и вообще любые файлы.
Создание параметров BINARY
Параметры реестра этого типа создаются точно так же, как и все остальные – из контекстного меню разделов редактора реестра. Также бинарные сведения в реестр могут быть добавлены из командной строки/PowerShell или путем импорта созданного в текстовом редакторе REG-файла. Несмотря на название «REG_BINARY», данные в параметрвх этого типа хрянятся не в двоичном, а в шестнадцатеричном формате.
Преобразовать в 16-ричный код необходимые значения можно в любом шестнадцатеричном редакторе, причем необязательно устанавливать его на компьютер.
В Интернете можно найти онлайн-приложения, например, hexed.it или ru.rakko.tools/tools/77.
Первый подходит для работы с файлами, второй, который попроще, позволяет конвертировать текст.
Добавим для примера в реестр BINARY-параметр с названием «Site» и значением «white-windows.ru».
Переходим на сайт сервиса rakko.tools, вставляем текстовое значение в первую форму и жмем кнопку «Текст в Hex».
Получаем строку вида 77,68,69,74,65,2d,77,69,6e,64,6f,77,73,2e,72,75.
Это и есть строка «white-windows.ru» в шестнадцатиричном представлении.
Запускаем редактор реестра, создаём в нужном разделе параметр REG BINARY, даём ему имя и кликаем по нему дважды.
Откроется окошко редактирования значения параметра – вводим полученную в онлайн-конвертере/редакторе строку с клавиатуры, без запятых и пробелов, символ за символом.
При этом по мере ввода байтов справа будет появляться читабельный вариант, если используемое значение представляет собой текст.
Закончив ввод, сохраняем результат.
То же самое можно сделать, импортировав в реестр подготовленный REG-файл.
Он имеет следующую структуру:
Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOTTest]
«название параметра»=hex:последовательность байтов через запятую
В квадратных скобках указывается ключ, в прямых кавычках — название параметра, а затем его значение — hex:16-ричный код.
И ещё один момент.
Если экспортировать ключ реестра с бинарным параметром с большим объемом данных, в текстовом редакторе последовательность байтов будет включать знаки переноса.
Перед тем как вставлять такой код в шестнадцатеричный редактор, их нужно будет удалить.