Вход/Регистрация
1001 совет по обустройству компьютера
вернуться

Ревич Юрий Всеволодович

Шрифт:

К счастью, настроить список папок в окне Открыть/Сохранить файл довольно просто. Для общего диалогового окна Windows XP найдите в ветви реестра HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\comdlg32 раздел PlacesBar, если его там нет – создайте. Этот раздел должен содержать четыре-пять параметров с именами Place0-Place4. Для обычных папок эти параметры должны иметь строковый тип и значение, указывающее путь к папке. Например, для параметра Place3 можно задать значение "C:\Windows" (как обычно, обязательно в кавычках, если путь включает пробелы). Для системных папок надо задавать значения типа DWORD (табл. 12.1).

Таблица 12.1. Системные наименования ряда параметров (наименования некоторых параметров продублированы по-английски)

При желании можно удалить этот перечень вовсе. Для этого в том же разделе HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\comdlg32 надо создать параметр NoPlacesBar типа DWORD и придать ему значение, равное 1.

Для окна Открыть/Сохранить файл Microsoft Office настройка производится по иному принципу. Найдите ветвь HKEY_CURRENT_USER\Software\Microsoft\Office\11.0\ Common\Open Find\Places\StandardPlaces

Здесь название раздела 11.0 относится к Office 2003, для Office XP это будет 10.0, для Office 2000 – 9.0. В каждом имеющемся там разделе (Desktop, MyComputer и пр.), который вы хотите удалить из перечня, создайте DWORD-параметр с именем Show и значением 0.

На освободившееся место можно поставить свои папки, если в соседней ветви HKEY_CURRENT_USER\Software\Microsoft\Office\11.0\Common\Open Find\Places\UserDefinedPlaces создать разделы с произвольными именами (например, 1, 2, 3 и т. п.), содержащие по паре параметров строкового типа с именами Nаmе и Path, определяющие соответственно название и полный путь к нужной папке. Общее число отображаемых папок в разделах StandardPlaces вместе с новыми позициями в разделе UserDefinedPlaces не должно быть больше пяти.

Если вы ошибетесь и установите неверный путь к несуществующей папке, то она просто не будет отображаться. Через ветвь реестра HKEY_LOCAL_MACHINE эти настройки можно сделать для всех пользователей сразу.

12.7.4. Переназначение клавиш на клавиатуре

На клавиатуре есть множество клавиш, которыми вы никогда не пользуетесь. Одна из самых надоедливых – клавиша <Caps Lock>, сохранившаяся со времен программистских языков типа Фортрана, где все писалось заглавными буквами. Редко кто пользуется и системными клавишами Windows (и основной, и для вызова контекстного меню) – это удобнее делать мышью. Между тем случайное нажатие этих клавиш тормозит всю работу. Те, кого это раздражает, могут отключить их или переназначить на другие функции – например, на соседние клавиши.

Рассмотрим на примерах эти действия, а потом расскажем, как это осуществляется в общем случае – для любой клавиши.

Сначала нужно в разделе реестра HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\ Control\Keyboard Layout (не путать с Keyboard Layouts!) создать новый двоичный параметр (в меню так и будет написано – двоичный параметр), озаглавив его Scancode Map (с пробелом!), и присвоить ему значение по следующему образцу:

00 00 00 00 00 00 00 00

03 00 00 00 00 00 5C E0

00 00 5D E0 00 00 00 00

Эта строка отключит клавишу с флажком Windows и соседнюю клавишу вызова всплывающего меню. Разберемся в том, что здесь написано.

Сначала должно идти 8 пар нулей подряд. Затем идет число (с ведущим нулем) – в данном случае 03, которое означает количество отслеживаемых клавиш плюс единица (т. е. в этом примере отслеживаем две клавиши). После него всегда должно идти три пары нулей (дополняя до 4-х пар цифр). Заканчиваться запись должна всегда четверкой пар нулей. А вот между ними мы должны записать столько четверок парных чисел, сколько мы предусмотрели клавиш для отслеживания – в данном случае две. В них записываются так называемые скан-коды клавиш, которые желаем отключить. В табл. 12.2 приведены коды тех клавиш, которые целесообразно рассматривать в плане кандидатов на отключение или замену (см. далее).

Эти коды записываются в последние две пары каждой четверки пар чисел, первые две пары опять же нули – как вы и видите в образце. Таким образом, приведенная в качестве примера строка отключит нам правую клавишу <Win> (с флажком Windows) (00 00 5C E0) и соседнюю клавишу <PopUp Menu> вызова всплывающего меню (00 00 5D E0).

Таблица 12.2. Скан-коды клавиш

* Официальное название этой клавиши – <Application>

Что такое скан-коды и где их взять

Скан-код – это то число, которое выдает клавиатура при нажатии определенной клавиши. Скан-коды не следует путать с виртуальными кодами клавиш – последние формируются уже на уровне BIOS и Windows и в дальнейшем определяют коды символов, те самые, что, например, образуют содержимое текстовых документов. В большинстве случаев они никак между собой не связаны. Например, виртуальный код клавиши «пробел» – 32 (совпадает с кодом символа «пробел» в однобайтных кодировках), а скан-код ее – 57 (в HEX-форме это будет 20 и 39 соответственно). Заметьте, что виртуальные коды не эквивалентны символьным – чтобы превратить виртуальный код в код символа, надо еще учесть языковую раскладку, состояние клавиш <Shift>, <Caps Lock> и, между прочим, используемую систему кодировок – однобайтную или Unicode. Все это проделывает системный драйвер клавиатуры еще до того, как событие нажатия попадает в очередь Windows-сообщений. Некоторые клавиши (<Win> или <Caps Lock>) вообще ни с какими символами не связаны и в указанную очередь не попадают. Поэтому для полной подмены функциональности некоей клавиши подменить виртуальные коды (что вообще-то может сделать любой, владеющий навыками программирования в Delphi или Visual C++) недостаточно – надо действовать на более глубоком уровне, манипулируя именно скан-кодами. Это и позволяет осуществить параметр Scancode Map в реестре Windows.

Для наших целей скан-коды, как вы можете догадаться по приведенной таблице, должны быть представлены в шестнадцатеричной (HEX), а не десятичной форме. Таблицы виртуальных кодов и кодов символов обычно прилагается к любому пособию по Windows-программированию, а вот полную таблицу скан-кодов разыскать непросто. Одна из таких таблиц находится на сайте «Электронная библиотека» по ссылкеОна немного неудачно составлена – так называемые расширенные клавиши (это те, у которых второй байт в нашей таблице равен E0) там показаны добавлением лишнего разряда, равного 1. То есть выбрав из колонки HEX скан-код, например, 11С (клавиша <Enter> на цифровой клавиатуре), его надо для наших целей переписать как 1С E0. Официальный полный набор скан-кодов, включая и клавиши управления питанием (но исключая дополнительные медиаклавиши), можно скачать с сайта Microsoft. Ссылка на документ очень длинная, потому просто наберите в поиске на microsoft.com слова Keyboard Scan Code Specification», и получите искомое – правда, по-английски. При изучении этого документа учтите, что нас интересует только один набор кодов: Scan Code Set 1.

  • Читать дальше
  • 1
  • ...
  • 93
  • 94
  • 95
  • 96
  • 97
  • 98
  • 99
  • 100
  • 101
  • 102
  • 103
  • ...

Ебукер (ebooker) – онлайн-библиотека на русском языке. Книги доступны онлайн, без утомительной регистрации. Огромный выбор и удобный дизайн, позволяющий читать без проблем. Добавляйте сайт в закладки! Все произведения загружаются пользователями: если считаете, что ваши авторские права нарушены – используйте форму обратной связи.

Полезные ссылки

  • Моя полка

Контакты

  • chitat.ebooker@gmail.com

Подпишитесь на рассылку: