Мне интересно, почему максимальная длина имени раздела реестра составляет 255 символов, а максимальная длина имени службы - 256, что за этим стоит?
(Обратите внимание, что эти спецификации длины без терминатора \ 0).
Это странно, учитывая, что диспетчер управления службами сохраняет свою служебную информацию в реестре.
Плюс мои собственные тесты показывают, что действительно возможно создать:
- сервисы с именами из 256 символов, использующие API
CreateService
.
- ключи реестра, имеющие также имена из 256 символов, с использованием
RegCreateKeyEx
API.
Это "явление" также наблюдается другими, например, как описано в этом блоге .
Оба ограничения задокументированы на сайтах документации Microsoft: