Меню Рубрики

Типы данных реестр windows

Типы данных реестр windows

Windows поддерживает в реестре следующие типы данных:

  • REG_BINARY . Двоичные данные. Редактор реестра отображает дво­ичные данные в шестнадцатеричном виде, и вы должны вводить дво­ичные данные, используя шестнадцатеричную нотацию. Примером значения типа REG_BINARY является последовательность 0x02 0xFE 0хА9 0x38 0x92 0x38 0хАВ 0xD9.
  • REG_DWORD . Значения длиной в два слова (32 бита). Многие значе­ния являются значениями типа REG_DWORD и используются как логические флаги (0 или 1, истина или ложь, да или нет). Также в зна­чениях типа REG_DWORD можно встретить время в миллисекундах (1000 равно 1 секунде). 32-битные беззнаковые числа имеют диапазон от 0 до 4,294,967,295, а 32-битные знаковые числа имеют диапазон от -2,147,483,648 до 2,147,483,647. Вы можете просматривать и редакти­ровать эти значения в десятичной или шестнадцатеричной форме. Примерами REG_DWORD являются значения 0xFE020001 и 0x10010001.

  • REG_DWORD_BIG_ENDIAN . Значения длиной в два слова, распо­ложенные в памяти в прямом порядке (первым хранится старший байт). Порядок байтов в этом случае является обратным по отноше­нию к порядку, используемому для значений типа REG_DWORD. На­пример, число 0x01020304 хранится в памяти как 0x01 0x02 0x03 0x04. На Intel-совместимых архитектурах вы не часто будете сталкивать с этим типом значений.
  • REG_DWORD_UTTLE_ENDIAN . Значения длиной в два слова, рас­положенные в памяти в обратном порядке (первым хранится млад­ший байт). Этот тип является тем же, что и REGDWORD, и из-за того, что Intel-совместимые архитектуры хранят числа в памяти в этом формате, это наиболее общий числовой формат в Windows XP. На­пример, число 0x01020304 хранится в памяти как 0x04 0x03 0x02 0x01. Редактор реестра не предоставляет возможности создавать значения типа REG_DWORD_LITTLE_ENDIAN потому, что этот тип иденти­чен REGDWORD.
  • REG_EXPAND_SZ . Текст переменной длины. Значение этого типа мо­жет включать переменные среды окружения, а программа, использу­ющая эти значения, берет эти переменные из реестра и преобразует перед тем, как использовать их. Например, значение типа REG_EXPAND_SZ, содержащее %USERPROFILE%\Favorites, может быть переведено в C:\Documents and Settings\Jerry\Favorites перед тем, как быть использованным программой. API (Application Programming Interface — интерфейс программирования приложений) для работы с реестром полагается на то, что вызывающая программа сама преобразует переменные окружения в строки типа REG_EXPAND_SZ, таким образом, эти значения бесполезны, если программа не делает этого. Чтобы узнать, как использовать эти типы значений для решения некоторых интересных проблем, обратитесь к гл. 10 «Использование профилей пользователей».
  • REG_FULL_RESOURCE_DESCRIPTOR . Список ресурсов устройства или драйвера устройства. Этот тип данных важен для Plug and Play, но не имеет большого значения в вашей работе с реестром. Редактор реестра не предоставляет способа создавать значения этого типа, но он позволяет вам просматривать их. В качестве примера этого типа данных смотрите HKLM\HARDWARE\DESCRIPTION\Description.
  • REG_LINK . Ссылка. Вы не можете создавать значения типа REGLINK.
  • REG_MULTI_SZ . Двоичные значения, содержащие список строк. Ре­дактор реестра отображает по одной строке текста в строке и позво­ляет вам редактировать эти списки. В реестре каждая строка отделе­на от другой при помощи символа null (0x00), а весь список заканчивается двумя символами null.
  • REG_NONE . Значения без определенного типа.
  • REG_QWORD. Значения длиной в четыре слова (64 бита). Этот тип похож на REG_DWORD, но содержит 64 бита вместо 32. Единствен­ная версия Windows XP, которая поддерживает этот тип — это Windows XP 64-Bit Edition (64-разрядная версия). Вы можете просмат­ривать и редактировать эти значения в десятичной или шестнадца-теричной форме. Примером REG_QWORD является значение 0xFE02000110010001.
  • REG_QWORD_BIG_ENDIAN . Значения длиной в четыре слова, рас­положенные в памяти в прямом порядке (первым хранится старший байт). Порядок байтов в этом случае является обратным по отноше­нию к порядку, используемому для значений типа REG_QWORD. За дополнительной информацией об этом типе обратитесь к описанию типа REG_DWORD_BIG_ENDIAN.
  • REG_QWORD_LITTLE_ENDIAN . Значения длиной в четыре слова, расположенные в памяти в обратном порядке (первым хранится млад­ший байт). Этот тип является тем же самым, что и тип REGQWORD. REG_RESOURCE_LIST. Список значений типа REG_FULL_RESO- URCE_DESCRIPTION. Редактор реестра позволяет вам просматри­вать, но не редактировать значения этого типа.
  • REG_RESOURCE_REQUIREMENTS_LIST . Список ресурсов, исполь­зуемых устройством. Редактор реестра позволяет вам просматривать, но не редактировать значения этого типа.
  • REG_SZ . Текст постоянной длины. Значения типа REG_SZ, вместе со значениями типа REG_DWORD, являются наиболее используемыми типами данных в реестре. Примерами значений типа REG_SZ явля­ются «Microsoft Windows». Каждая строка заканчивается символом null. Программы не преобразуют перемен­ные окружения, содержащиеся в значениях типа REG_SZ.

Источник

Типы данных реестра

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

Поскольку реестр Microsoft Windows представляет собой сложную реляционную базу данных, вся информация, которая может храниться в конечных информационных контейнерах этой базы (параметрах), должна быть строго классифицирована. Классификация хранящихся в параметрах значений производится по типу данных, представляющих это значение. Всего насчитывается 11 таких типов

Раздел и подраздел могут содержать 0, 1 или несколько параметров, параметр по умолчанию, а также 0 или несколько подразделов. Каждый параметр имеет имя, тип и значение.

Три части параметра реестра всегда располагаются в определенном порядке: Имя, Тип данных, значение (например: [RegistrySizeLimit] [REG_DWORD] [0x8000000]).

В таблице, которая будет приведена ниже, содержится список типов данных, определенных и используемых Windows на сегодняшний день.

Максимальная длина имени параметра:

  • 16 383 символов для Windows Server 2003, Windows XP и Windows Vista
  • 260 символов ANSI или 16 383 символа Юникод для Windows 2000
  • 255 символов для Windows 95, Windows 98 и Windows Millennium Edition

Значения большого размера (больше 2048 байт) хранятся во внешних файлах, а в реестр заносится имя такого файла. Это способствует повышению эффективности использования реестра.

Максимальный размер параметра:

  • Вся доступная память для Windows NT 4.0/Windows 2000/Windows XP/Windows Server 2003/Windows Vista
  • 16 300 байт для Windows 95, Windows 98 и Windows Millennium Edition

Ниже приводится назначение этих параметров.

REG_BINARY

Необработанные двоичные данные. Большинство сведений об аппаратных компонентах хранится в виде двоичных данных и выводится в редакторе реестра в шестнадцатеричном формате.

REG_DWORD

Данные, представленные целым числом (4 байта, 32 бита). Многие параметры служб и драйверов устройств имеют этот тип и отображаются в двоичном, шестнадцатеричном или десятичном форматах. Эквивалентами типа DWORD являются DWORD_LITTLE_ENDIAN (самый младший байт хранится в памяти в первом числе) и REG_DWORD_BIG_ENDIAN (самый младший байт хранится в памяти в последнем числе).

REG_EXPAND_SZ

Расширяемая строка данных. Эта строка представляет собой текст, содержащий переменную, которая может быть заменена при вызове со стороны приложения.

REG_MULTI_SZ

Многострочное поле. Значения, которые фактически представляют собой списки текстовых строк в формате, удобном для восприятия человеком, обычно имеют именно этот тип данных. Записи разделяются пробелами, запятыми или другими символами.

REG_SZ

Текстовая строка в формате, удобном для восприятия человеком. Значениям, представляющим собой описания компонентов, обычно присваивается именно этот тип данных. Имеет фиксированную длину.

REG_LINK

Символическая ссылка в формате Юникод.

REG_FULL_RESOURCE_DESCRIPTOR

Последовательность вложенных массивов. Служит для хранения списка ресурсов, которые используются физическим устройством. Обнаруженные данные система сохраняет в разделе \HardwareDescription. В окне редактора реестра эти данные отображаются в виде двоичного параметра в шестнадцатеричном формате

REG_RESOURCE_LIST

Последовательность вложенных массивов. Служит для хранения списка ресурсов, которые используются драйвером устройства или управляемым им физическим устройством. Обнаруженные данные система сохраняет в разделе \ResourceMap. В окне редактора реестра эти данные отображаются в виде двоичного параметра в шестнадцатеричном формате

REG_RESOURCE_REQUIREMENTS_LIST

Последовательность вложенных массивов. Служит для хранения списка драйверов аппаратных ресурсов, которые могут быть использованы определенным драйвером устройства или управляемым им физическим устройством. Часть этого списка система записывает в раздел \ResourceMap. Данные определяются системой. В окне редактора реестра они отображаются в виде двоичного параметра в шестнадцатеричном формате

REG_QWORD

Данные, представленные в виде 64-разрядного целого. Начиная с Windows 2000, такие данные отображаются в окне редактора реестра в виде двоичного параметра

REG_NONE

Данные, не имеющие определенного типа. Такие данные записываются в реестр системой или приложением. В окне редактора реестра отображаются в виде двоичного параметра в шестнадцатеричном формате

01.02.2010 (обновлено 11.01.2014) , Chemtable Software

Источник

Типы данных и ключи реестра операционной системы Windows

Каждый пользователь, наверняка, не раз слышал от системных администраторов, мастеров при ремонте компьютера или от своих более «продвинутых» друзей такие фразы, как «надо бы почистить реестр», «запорчен реестр», «придется редактировать реестр» и тому подобное. Не все знают, что речь идет о реестре операционной системы Windows, который является одним из обязательных элементов программного обеспечения компьютерного устройства.

С помощью его редактирования можно устранить ошибки и нестыковки в работе некоторых приложений, таким образом, улучшить функциональность компьютера и добиться более эффективной его работы.

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

Содержание

Что такое системный реестр Windows

Системный реестр ОС Windows является частью устанавливаемого программного обеспечения, содержащий следующую служебную информацию:

  • установленное оборудование (конфигурация, драйвера);
  • параметры используемых портов;
  • свойства папок;
  • типы документов;
  • значки приложений;
  • основные сведения пользователя (имя, профиль, аккаунты, пароли) и прочее.

Первоначальные данные реестра формируются во время установки операционной системы, а последующие при каждой новой загрузке. Сведения в нем изменяются в процессе работы, буквально с каждым новым кликом мышкой. Операционная система постоянно обращается к реестру для получения руководства к действию: что и как она должна поступать с папками, файлами, программами и оборудованием. Подробнее о том, что хранится в реестре Windows 7 здесь.

Ключи системного реестра Windows

Структурно данный функционал представляет собой иерархическую базу данных, проще говоря, имеет древовидное строение или куст. Наверху находятся ветви, обозначаемые как HKEY_ , затем разделы и ключи, подразделы и, последние в данной цепочке — параметры.

В Windows имеется пять основных ветвей:

  • HKEY_LOCAL_MACHINE (HKLM). Здесь содержится большой объем информации, используемой для настройки компьютерного устройства. Ветка располагает сведениями об операционной системе, установленном программном обеспечении и оборудовании: типе шины, объеме доступной оперативной памяти, списке загруженных драйверов и прочее.
  • HKEY_CURRENT_USER (HKCU). В этой ветви имеются сведения о пользователе, который в данный момент времени работает за компьютером. В подразделах хранится информация о пользовательских настройках, сетевых соединениях, конфигурации рабочего стола, используемых программах и т.п.
  • HKEY_CLASSES_ROOT (HKR). Данная ветка располагает информацией о настройках интерфейса, всех расширениях файлов и ActiveX-компонентах, зарегистрированных в системе. Ее содержимое формируется на основе двух предыдущих ветвей:HEY_LOCAL_MACHINE\SOFTWARE и HKEY_CURRENT_USER\Software. Сюда включены сведения о расширениях файлов, зарегистрированных в системе, а также описаны действия, которые можно выполнять с этими файлами.
  • HKEY_CURRENT_CONFIG (HKCC) содержит данные о профилях активного оборудования и их драйверах.
  • HKEY_USERS (HKU). В этой ветви имеются сведения обо всех пользователях компьютера (их профили, имена, пароли и проч). Источником информации служат ветки HKEY_CURRENT_USER через параметр Security ID (SID) пользователя, и HKEY_USERS\DEFAULT, содержащий данные об актуальных параметрах системы.

Следующие в иерархии реестра – разделы и ключи. Для них нет универсального обозначения, поэтому разработчики называли их согласно типу данных, расположенных в ключе. Формирование ключей выполняется из разных источников: одни создаются системой, поэтому изменение их имени может привести к полной блокировке работы ОС, другие указываются пользователем, поэтому их имена не влияют на работоспособность компьютера.

Подразделы реестра или subkeys относятся к очередной структурной категории, их формирование подобно ключам, а редактирование системных данных также может отражаться на работе компьютера.

Последними в этой ступенчатой структуре располагаются параметры values, которые содержат данные, влияющие на работу всей операционной системы и компьютера в целом. Они отличаются между собой по типу значений информации.

По аналогии с архитектурой данных, имеющихся на компьютере, можно представить, что корневые папки играют ту же роль, что и разделы на жестком диске, ключи и подразделы похожи по функциональности на папки и подпапки, а параметры есть не что иное, как файлы, находящиеся в папках. Точно также как файлы, параметры имеют свое имя и значение (т.е. расположенную в них информацию).

Типы данных системного реестра Windows

Параметр — последний элемент в иерархии реестра, характеризуется именем, типом данных и значением, которые всегда располагаются в строго определенном порядке, например: [RegistrySizeLimit] [REG_DWORD] [0x8000000]. Разделы и подразделы системного реестра могут содержать 0, 1 или несколько параметров, а также параметр по умолчанию.

Данные, представляющие значение параметра системного реестра подразделяются на 11 типов.

  • REG_NONE. Тип данных «Неизвестный» содержит зашифрованные данные, т.е. не имеющие определенного типа.

Эти данные записываются в реестр системой или приложением. В окне редактора отображаются в виде двоичного параметра в шестнадцатеричном формате.

  • REG_SZ. Тип данных «Строковый» относится к тексту.

Текстовая строка в формате, удобном для восприятия человеком. Этот тип данных имеет фиксированную длину и обычно присваивается значениям описания компонентов.

  • REG_EXPAND_SZ. Тип данных «Строковый» — расширяемая строка данных, означающая текст и переменные.

Представляет собой текст, содержащий переменную, которая может быть заменена при вызове со стороны приложения.

  • REG_BINARY. Тип данных «Двоичный» содержит необработанные двоичные данные.

Большинство сведений об аппаратных компонентах хранится в виде двоичных данных и выводится в редакторе реестра в шестнадцатеричном формате.

  • REG_DWORD. Тип данных «Числовой» содержит целое число, обычно служит как переключатель, где 0 — выключено, а 1, соответственно, включено.

Данные, представленные целым числом (4 байта, 32 бита). Многие параметры служб и драйверов устройств имеют этот тип и отображаются в двоичном, шестнадцатеричном или десятичном форматах. Эквивалентами типа DWORD являются DWORD_LITTLE_ENDIAN (самый младший байт хранится в памяти в первом числе) и REG_DWORD_BIG_ENDIAN (самый младший байт хранится в памяти в последнем числе).

  • REG_DWORD_BIN_ENDIAN. Тип данных «Числовой» содержит также числовые данные, но с обратным порядком байтов.
  • REG_LINK. Тип данных «Строковый» указывает путь к файлу. Это символическая ссылка в формате Юникод.
  • REG_MULTI_SZ. Тип данных «Многостроковый» определяет массив строк.

Многострочное поле. Этот тип данных обычно имеют значения, представляющие собой списки текстовых строк в формате, удобном для восприятия человеком. Записи разделяются пробелами, запятыми или другими символами.

  • REG_RESOURCE_LIST. Тип данных «Строковый» содержит список ресурсов устройств.

Последовательность вложенных массивов. Служит для хранения списка ресурсов, которые используются драйвером устройства или управляемым им физическим устройством. Обнаруженные данные система сохраняет в разделе \ResourceMap. В окне редактора реестра эти данные отображаются в виде двоичного параметра в шестнадцатеричном формате.

  • REG_FULL_RESOURCE_DESCRIPTOR. Тип данных «Строковый» идентифицирует ресурс устройства.

Последовательность вложенных массивов. Служит для хранения списка ресурсов, которые используются физическим устройством. Обнаруженные данные система сохраняет в разделе \HardwareDescription. В окне редактора реестра эти данные отображаются в виде двоичного параметра в шестнадцатеричном формате.

  • REG_RESOURCE_REQUIREMENTS_LIST. Тип данных «Строковый» также является идентификатором ресурса устройства.

Представляет собой последовательность вложенных массивов. Служит для хранения списка драйверов аппаратных ресурсов, которые могут быть использованы определенным драйвером устройства или управляемым им физическим устройством. Часть этого списка система записывает в раздел \ResourceMap. Данные определяются системой. В окне редактора реестра они отображаются в виде двоичного параметра в шестнадцатеричном формате.

Максимальная длина имени параметра зависит от версии операционной системы Windows и может составлять:

  • 16 383 символов для Windows Server 2003, Windows XP и Windows Vista;
  • 260 символов ANSI или 16 383 символа Юникод для Windows 2000;
  • 255 символов для Windows 95, Windows 98 и Windows Millennium Edition.

Для повышения эффективности использования реестра, значения размера больше, чем 2048 байт хранятся во внешних файлах, а в реестр заносится только имя такого файла.

Архитектура системного реестра 64-битной версии Microsoft Windows немного отлична от структуры реестра 32-разрядной версии Windows и включает 2 независимых раздела:

  • первый содержит данные, относящиеся к 32-разрядным компонентам ОС;
  • второй — все сведения по 64-разрядным компонентам.

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

Особенности редактирование реестра Windows

Чтобы попасть в редактор реестра, нужно нажать кнопку меню «Пуск», а затем «Выполнить». В открывшемся окне ввести команду regedit и подтвердить «ОК». На экране появится меню редактора с пятью корневыми папками, заходя в которые можно редактировать ключ, изменяя какую-либо функцию или отключая ее вовсе.

Реестр Windows является особым элементом операционной системы, любые действия в котором выполняются компьютером без запроса на подтверждение, поэтому необходимо очень внимательно и осторожно вносить какие-либо изменения, так как некорректные удаления или другие операции могут негативно сказаться на работе компьютера.

Необходимо всегда четко запоминать, какие вмешательства производились, чтобы в случае чего, вернуть назад сделанные изменения. Для уверенности, перед началом работы рекомендуется произвести резервную копию. Особенно, если используются утилиты для работы и оптимизации реестра. Если вы хотите действительно увеличить производительность, обратите внимание на такие этапы настройки и оптимизации ноутбука.

Для этого находясь в редакторе реестра нужно, встав на значок «Мой компьютер», кликнуть правой кнопкой мыши и в выпадающем меню выбрать действие «Экспортировать», затем указать путь, т.е. папку, в которую будет сохранена копия системного реестра в виде файла.

Если после редактирования реестра возникнут какие-либо неполадки с системой, достаточно два раза кликнуть по сохраненному файлу и реестр будет восстановлен до первоначального значения. В экстренных случаях воспользуйтесь инструкцией по восстановлению реестра.

Примеры редактирования системного реестра

Для отключения какой-либо функции, работающей с типом данных DWORD, значение 1 нужно заменить на 0. Изменения вступают в силу после перезагрузки компьютера.

С помощью редактора реестра можно, например, переименовать «Корзину». Обычным образом этого сделать невозможно, так как данная функция относится к служебным и после перезагрузки имя «Корзина» восстановится обратно. В редакторе реестра нужно выбрать ключ HKEY_CLASSES_ROOT\CLSID\ и, дважды кликнуть левой кнопкой мыши по параметру «LocalizedString«, затем в появившемся поле ввести свое название, например «Мусор«. После перезагрузки под значком корзины появится ваше наименование.

Можно убрать стрелку, которая появляется при создании ярлыка на новой иконке. Чтобы избавится от нее, нужно открыть ветку HKEY_CLASSES_ROOT\lnkfile и удалить параметр «IsShortcut«.

Для удобства пользования пунктами меню «Пуск» можно удалить из него редко используемые функции, например, «Недавние документы». Для этого перейдите в папку HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer и создайте параметр с названием «NoRecentDocsMenu» и значением «1».

Если за компьютером работают несколько пользователей, возможны опасения, что кто-то удалит нужную программу. В этом случае можно сделать недоступной вкладку «Установка и удаление программ» в «Панели управления». Для этого в разделе HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies сформируйте подраздел «Uninstall«, в котором создайте параметр типа DWORD c названием «NoAddRemovePrograms» и значением «1».

Еще одна удобная модификация системного реестра – отключение клавиши со значком Windows на клавиатуре.

Она иногда мешает пользователю, так как случайное нажатие мгновенно вызывает появление меню «Пуск», что неудобно. Необходимо в разделе HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layout создать двоичный параметр «Scancode Map» и задать ему значение «00 00 00 00 00 00 00 00 03 00 00 00 00 00 5B E0 00 00 5C E0 00 00 00 00«. После этого перегрузить компьютер. Эта кнопка перестанет вас беспокоить навсегда.

Таким образом, можно вносить нужные изменения в реестр, чтобы сделать работу на компьютере более удобной, функциональной и производительной. Главное, не забывать создавать резервную копию, чтобы в случае некорректных изменений «отмотать» все назад.

Кроме этого, полезно периодически выполнять чистку реестра, так как в процессе работы на компьютере неизбежно появляются различные «хвосты», которые тормозят работу операционной системы. Это могут быть громоздкие остатки ключей и параметров после установленных и удаленных программ, компьютерных игр и прочих приложений. Очистка реестра выполняется с помощью специальных утилит, например, бесплатной CCleaner, и позволяет существенно повысить производительность компьютера. Кроме того, желательно периодически выполнять дефрагментацию для ускорения доступа к файлам (обзор лучших дефрагментаторов).

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

  • Типографская раскладка windows 10
  • Типовое окно элементы окна windows
  • Типовое окно windows это
  • Типи вікон у windows
  • Тип ядра windows 10


  • Наименование Тип данных Назначение
    REG_BINARY Двоичный Двоичные данные
    REG_DWORD Числовой Число
    REG_QWORD Числовой 64-разрядное числовое значение
    REG_EXPAND_SZ Строковый Текст и переменные
    REG_FULL_RESOURCE_DESCRIPTOR Строковый Идентификатор ресурса устройства
    REG_LINK Строковый Путь к файлу
    REG_MULTI_SZ Многостроковый Массив строк
    REG_NONE Неизвестный Зашифрованные данные
    REG_RESOURCE_LIST Строковый Список ресурсов устройств
    REG_RESOURCE_REQUIREMENTS_LIST Строковый Идентификатор ресурса устройства
    REG_SZ Строковый Текст