Читаем Хитрости Windows 7. Для профессионалов - 2011 полностью

Вот пример, покалывающий, как добавить пользовательское контекстное меню к типу файла с использованием малоизвестной новой игрушки в Windows 7 под названием clip.exe. Это программа командной строки, которая копирует текст в буфер обмена и, по стечению обстоятельств, хорошо работает с текстовыми файлами.

Откройте редактор реестра и перейдите к HKEY_CLASSES_ROOT\.txt. Посмотрите на значение (По умолчанию) в правой области, чтобы узнать имя раздела типа файла (обычно это txtfile).

Перейдите к разделу типа файла (например, HKEY_CLASSES_ROOT\txtfile) и откройте подраздел shell (HKEY_CLASSES_ROOT\txtfile\shell). Создайте внутри shell новый раздел, названный copycontents. Откройте новый раздел, щелкните на значении (По умолчанию), введите Копировать содержание в буфер обмена (Сору Contents to Clipboard) в качестве данных значения и нажмите ОК.

Затем создайте раздел, названный command, внутри раздела copycontents. Откройте новый раздел command и установите его значение По умолчанию (Default) cmd. exe / с clip < "%1". Затем нажмите ОК и закройте редактор реестра.

Чтобы проверить, как это работает, щелкните правой кнопкой на любом .txt-файле в Проводнике и выберите Копировать содержимое в буфер обмена. (Если новой записи там нет, возможно, вы поместили новые разделы в реестре в неправильном месте.) Можно проверить, что содержимое файла было скопировано в буфер обмена, вставив его в пустое окно Блокнота.

Можно использовать утилиту Clip, чтобы копировать в буфер обмена практически что угодно. Например, чтобы скопировать имя выбранного файла, введите данные значения (По умолчанию) в разделе command: cmd.exe /с echo%l | clip

Или, например, если вы добавили элемент контекстного меню в тип файла Папка (Folder), можно скопировать содержание любой папки с помощью такой команды: cmd.exe /с dir и%1" /Ь /о:п | clip

Откройте окно командной строки и введите clip /?, чтобы узнать команды этого инструмента.

Великолепно звучит, не правда ли? К сожалению, в Windows 7 совершенно отсутствует окно Типов файла (File Types) — инструмент из более ранних версий Windows, который позволяет редактировать контекстные меню Проводника. Вместо него предлагается чрезвычайно упрощенное окно Задать сопоставления (Set Associations), показанное на рис. 3.17. Здесь вы можете только выбрать приложения по умолчанию для различных типов файла и при этом стереть значения по умолчанию ваших приложений или любые пользовательские контекстные меню, которые вы создали (подробнее об этом позже).

Итак, если вы хотите настроить свои контекстные меню, остается две возможности: или взломать реестр, или использовать стороннюю программу. Учитывая, что эта глава — про реестр, немного развлечемся, копаясь в разделах и значениях.

В реестре есть раздел под названием Shell, друтри которого все и происходит. Каждый подраздел Shell соответствует одному действию в контекстном меню файла.

Текст, который появляется в контекстном меню, определяется в значении раздела действия (Поумолчанию); если значение пусто, Проводник использует имя раздела (например, Открыть (Open)). К сожалению, в Windows 7 есть две соревнующиеся системы, которые определяют действия по умолчанию для типов файлов; для получения подробной информации см. врезку «Зло переопределения UserChoice» на с." 169.

Рис 3.17. Окно Задать сопоставления (Set Associations window) доступное из Панели управления Программы по умолчанию ► Сопоставление типа файла или протокола с программой (Default Programs ► Associate a file type or protocol with a program) — не показывает ничего хорошего

Скажем, вы щелкаете правой кнопкой на документе Microsoft Excel (.xlsx-файл), и в верхней части меню, которое появляется, вы видите Открыть (Open), Новый (New), и Печать (Print). Если вы откроете реестр, вы увидите, что HKEY_CLASSES_ROOT\. xlsx указывает на HKEY_CLASSES_ROOT\Excel. Sheet. 12. Перейдите к HKEY_CLASSES_ROOT \ Excel.Sheet. 12\Shell. Внутри раздела Shell вы увидите три подраздела — вы так и думали — New. Open, и Print Добавьте новый подраздел в Shell, сопровождаемый коротко описанными подразделами, и вы получите новую запись в контекстном меню для всех файлов выбранного типа.

ЗЛО ПЕРЕОПРЕДЕЛЕНИЯ USERCHOICE

Если вы щелкаете правой кнопкой на файле, выбираете Открыть с помощью (Орел With) и затем выбираете приложение по умолчанию ~ или если вы используете окно Задать сопоставления (Set Associations), показанное на рис. 3.17, - Windows фактически не изменяет тип файла. Вместо этого Windows добавляет новый раздел для расширения файла в HKEY_CURRENT_USER\Software\Microsoft \Windows\CurrentVersion\ Explorer\FileExts и затем в этом новом разделе добавляет раздел UserChoice с полным путем программы, которую вы выбрали:

Перейти на страницу:

Похожие книги

C++ Primer Plus
C++ Primer Plus

C++ Primer Plus is a carefully crafted, complete tutorial on one of the most significant and widely used programming languages today. An accessible and easy-to-use self-study guide, this book is appropriate for both serious students of programming as well as developers already proficient in other languages.The sixth edition of C++ Primer Plus has been updated and expanded to cover the latest developments in C++, including a detailed look at the new C++11 standard.Author and educator Stephen Prata has created an introduction to C++ that is instructive, clear, and insightful. Fundamental programming concepts are explained along with details of the C++ language. Many short, practical examples illustrate just one or two concepts at a time, encouraging readers to master new topics by immediately putting them to use.Review questions and programming exercises at the end of each chapter help readers zero in on the most critical information and digest the most difficult concepts.In C++ Primer Plus, you'll find depth, breadth, and a variety of teaching techniques and tools to enhance your learning:• A new detailed chapter on the changes and additional capabilities introduced in the C++11 standard• Complete, integrated discussion of both basic C language and additional C++ features• Clear guidance about when and why to use a feature• Hands-on learning with concise and simple examples that develop your understanding a concept or two at a time• Hundreds of practical sample programs• Review questions and programming exercises at the end of each chapter to test your understanding• Coverage of generic C++ gives you the greatest possible flexibility• Teaches the ISO standard, including discussions of templates, the Standard Template Library, the string class, exceptions, RTTI, and namespaces

Стивен Прата

Программирование, программы, базы данных
Секреты приложений Google
Секреты приложений Google

Даже продвинутые пользователи Интернета не подозревают о тех огромных возможностях, которые предоставляют сервисы Google. Автор рассказывает о таких «секретах» сервисов, которые просто немедленно хочется использовать! Создавать сайты и презентации, бродить по улочкам Парижа, изучать звездное небо – все это доступно каждому, кто сидит у экрана монитора и имеет доступ в Интернет. Книга научит вас работать с веб-приложениями и тысячекратно увеличить свои возможности с помощью новейших технологий. Она написана легким, доступным языком и не требует от читателя наличия каких-либо специальных знаний. Книга содержит множество примеров, иллюстраций и будет полезна всем, кто не стоит на месте и стремится сделать свою жизнь более насыщенной и интересной.

Денис Балуев , Денис Игоревич Балуев

Программирование, программы, базы данных / Интернет / Программное обеспечение / Книги по IT