Контекстное меню - это небольшое меню, которое появляется, когда вы используете правую кнопку мыши, чтобы щелкнуть на файле, папке, панели заголовка приложения или почти любом другом объекте на экране. В большинстве случаев это меню содержит список действий, присущих объекту, на котором вы щелкнули. Другими словами, доступные опции зависят от контекста.
Контекстное меню для файлов является набором стандартных действий, применимых ко всем файлам: Вставить, Удалить, Переименовать и Свойства, плюс одно или несколько специальных действий, зависящих от типа файла. Каждое из этих действий связано с приложением: если вы щелкаете правой кнопкой на .txt-файле и выбираете Открыть, Windows запускает Блокнот и дает Блокноту команду открывать выбранный файл. Действие по умолчанию - это действие, которое выполняется при двойном щелчке на файле, - выделено в контекстном меню полужирным шрифтом, а остальные действия перечислены ниже. Между прочим, это означает, что у вас может быть более чем одна программа, связанная с данным типом файла.
Например, для .html-файлов вы можете добавить действие Редактировать, чтобы открывать ваш любимый редактор веб-страниц, действие Просмотр с помощью Firefox, и действие Просмотр с помощью Internet Explorer - все это в дополнение к действию Открыть по умолчанию.
Копирование содержимого файла в буфер обмена
Вот пример, покалывающий, как добавить пользовательское контекстное меню к типу файла с использованием малоизвестной новой игрушки в Windows 7 под названием clip.exe. Это программа командной строки, которая копирует текст в буфер обмена и, по стечению обстоятельств, хорошо работает с текстовыми файлами.
Откройте редактор реестра и перейдите к HKEY CLASSES ROOT\.txt. Посмотрите на значение в правой области, чтобы узнать имя раздела типа файла.
Перейдите к разделу типа файла и откройте подраздел shell, введите Копировать содержание в буфер обмена в качестве данных значения и нажмите ОК.
Затем создайте раздел, названный command, внутри раздела copycontents. Откройте новый раздел command и установите его значение По умолчанию cmd. exe / с clip < "%Г. Затем нажмите OK и закройте редактор реестра.
Чтобы проверить, как это работает, щелкните правой кнопкой на любом.txt - файле в Проводнике и выберите Копировать содержимое в буфер обмена. Можно проверить, что содержимое файла было скопировано в буфер обмена, вставив его в пустое окно Блокнота.
Можно использовать утилиту Clip, чтобы копировать в буфер обмена практически что угодно. Например, чтобы скопировать имя выбранного файла, введите данные значения в разделе command: cmd.exe /с echo%l clip
Или, например, если вы добавили элемент контекстного меню в тип файла Папка, можно скопировать содержание любой папки с помощью такой команды: cmd.exe /с dir н%1" /Ь /о:п clip
Откройте окно командной строки и введите clip /?, чтобы узнать команды этого инструмента.
Великолепно звучит, не правда ли? К сожалению, в Windows7 совершенно отсутствует окно Типов файла - инструмент из более ранних версий Windows, который позволяет редактировать контекстные меню Проводника. Вместо него предлагается чрезвычайно упрощенное окно Задать сопоставления. Здесь вы можете только выбрать приложения по умолчанию для различных типов файла и при этом стереть значения по умолчанию ваших приложений или любые пользовательские контекстные меню, которые вы создали.
Итак, если вы хотите настроить свои контекстные меню, остается две возможности: или взломать реестр, или использовать стороннюю программу. Учитывая, что эта глава - про реестр, немного развлечемся, копаясь в разделах и значениях. В реестре есть раздел под названием Shell, внутри которого все и происходит. Каждый подраздел Shell соответствует одному действию в контекстном меню файла.
Текст, который появляется в контекстном меню, определяется в знамении раздела действия ; если значение пусто, Проводник использует имя раздела. К сожалению, в Windows7 есть две соревнующиеся системы, которые определяют действия по умолчанию для типов файлов.
Скажем, вы щелкаете правой кнопкой на документе Microsoft Excel, и в верхней части меню, которое появляется, вы видите Открыть, Новый, и Печать. Если вы откроете реестр, вы увидите, что HKEY_CLASSES_ROOT\. xlsx указывает на HKEY_CLASSES_ROOT\Excel. sheet. 12. Перейдите к НК ЕY_CLASSES_ROOT \ Excel.Sheet. 12\Shell. Внутри раздела Shell вы увидите три подраздела - вы так и думали - New, Open, и Print.Добавьте новый подраздел в Shell, сопровождаемый коротко описанными подразделами, и вы получите новую запись в контекстном меню для всех файлов выбранного типа.
Видите элемент контекстного меню, от которого вы хотите избавиться? Просто сотрите соответствующий раздел действия.