1

Я хочу спросить, есть ли у кого-то информация о ключе реестра Windows HKCR\lnkfile . Как я выяснил, он описывает, как ярлыки должны выполнять свою работу, но мне не удается найти много информации, все, что я знаю, это то, что если этот ключ удален, то ярлыки в машине Windows не работают. Поэтому хочу спросить, знает ли кто-нибудь что-то об этом ключе, его подразделах и значениях.

1 ответ1

4

Основные сведения об этих ключах можно найти в этой статье MSDN.

Под Windows 8 есть несколько вложенных клавиш и значений:

  • Значение по умолчанию обычно определяет видимое имя типа файла, но здесь оно игнорируется (см. FriendlyTypeName).
  • Clsid (ключ) определяет CLSID, связанный с ярлыками.
  • EditFlags (значение) является битовой маской с использованием FILETYPEATTRIBUTEFLAGS.
  • FriendlyTypeName (значение) - это просто связанный ресурс строки, идентифицирующий файл (перезаписывающий значение по умолчанию).
  • IsShortcut (значение) - это подсказка для проводника и общих диалоговых элементов управления, показывающая стрелку быстрого вызова в углу значка файла. Значение не имеет значения, наличие значения достаточно.
  • NeverShowExt (значение) является еще одной подсказкой и делает именно то, что следует из названия.
  • ShellEx (ключ) определяет дополнительные обработчики (CLSID в ключах):
    • ContextMenuHandlers определяет дополнительные записи в контекстном меню файлов, такие как "Открыть содержащую папку" (не уверен в точной формулировке).
    • DropHandler определяет дополнительные записи в меню перетаскивания (перетащите ярлык в другую папку, используя правую кнопку мыши).
    • IconHandler перезаписывает значок типа файла по умолчанию. По сути, это определяет, что CLSID отвечает за выбор правильного значка.
    • PropertySheetHandlers добавляет дополнительные вкладки в свойства файла. В данном случае это вкладка "Ярлык".
  • tabsets (ключ) Я не совсем уверен в этом, но я предполагаю, что он определяет ленту определенного типа файла для отображения в Windows 8.

CLSID по умолчанию для ярлыков: {00021401-0000-0000-C000-000000000046}, который можно найти в разделе HKCR\CLSID\{00021401-0000-0000-C000-000000000046}. Этот ключ по существу управляет библиотечным файлом, содержащим код для обработки типа файла (например, двойной щелчок /открытый глагол), которым является Shell32.dll.

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