4

В редакторе реестра Windows я заметил что-то странное. Путь к исполняемому файлу Inkscape написан на японском языке, как вы можете видеть на этом скриншоте:

Но это не относится к Google Chrome или Filezilla, для которых данные отображаются нормально:

Когда я щелкаю правой кнопкой мыши на одном из значений Inkscape, которое написано на японском языке, и нажимаю Изменить двоичные данные, это то, что я получаю:

Таким образом, данные в значении реестра верны, только редактор реестра использует неправильную кодировку, чтобы показать, что содержит значение. Странно то, что он делает это только для значений в одном ключе, а не в других. И когда я перемещаю одни и те же данные из одного ключа в другой, копируя / вставляя двоичный код, кодировка остается неизменной для каждого кода (например, если я копирую двоичный код для Inkscape и вставляю его в ключ Filezilla, он записывается на японском языке в ключе Filezilla тоже).

Почему редактор реестра не использует правильную кодировку?

1 ответ1

2

Все строки в Windows (а также в реестре Windows) предположительно в Unicode (упрощение: каждый символ = два байта); Я могу воспроизвести вашу проблему вручную (значение реестра TestValueCP1250), хотя я не представляю, как это сделать программно:

==> reg query "HKEY_CURRENT_USER\Software\Test Key" /V TestValueCP1250

HKEY_CURRENT_USER\Software\Test Key
    TestValueCP1250    REG_SZ    㩃停潲牧浡䘠汩獥䍜浯潭楆敬s

TestValueCP1250

Ср те же данные в Unicode (другое значение реестра TestValueUnicode)

==> reg query "HKEY_CURRENT_USER\Software\Test Key" /V TestValueUnicode

HKEY_CURRENT_USER\Software\Test Key
    TestValueUnicode    REG_SZ    C:\Program Files\Common Files

TestValueUnicode

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .