Если вы работаете в локальной системной учетной записи, HKEY_Current_User отсутствует.
Фактически, во многих случаях, даже если вы запускаете службу в качестве учетной записи пользователя, HKEY_CURRENT_USER не будет, потому что служба обычно не создает полную станцию Windows - она просто использует учетную запись пользователя для аутентификации , а не профиль.
Это одна из нескольких причин того, что многие приложения с поддержкой автоматизации COM не могут использоваться службами.
Однако вы сможете получить доступ к HKEY_LOCAL_MACHINE.
Редактировать
Если вы запускаете службу как определенную учетную запись пользователя (или если поток в вашей службе олицетворяет определенную учетную запись пользователя), вы можете использовать функцию RegOpenCurrentUser для получения дескриптора нужного ключа, а затем использовать RegistryKey. FromHandle использовать его из .Net API.