они приносят мне файлы для печати, так что автоматизация этой операции сэкономила бы мои усилия.

Дэрил Пайсоу, шт. Флорида

Папки, имена которых производны от календарных дат, удобны для хранения цифровых снимков, посланий электронной почты и многих других видов файлов. И очень удачно, что меню в Windows 2000 и XP можно настроить таким образом, что появляется возможность создавать папку, названную по текущей дате, всего лишь двумя щелчками мыши.

Для начала удостоверьтесь в том, что используемый вами формат записи дозволяется в качестве имени папки. Например, такой вид, как 10/31/05, не годится, потому что Windows запрещает ставить косую черту в названиях файлов и папок. Кроме того, вы, вероятно, захотите, чтобы при сортировке названные по датам папки хронологически упорядочивались по именам, поэтому первым в названии нужно указать год. (Если первым будет месяц, то любые файлы, которые вы создадите в октябре, ноябре и декабре, будут стоять сразу за файлами, созданными в январе.) Формат данных наподобие «2005-10-31» отлично подойдет в качестве основы для имени папки и позволит все упорядочить как надо.

Чтобы заставить Windows всегда использовать такой формат, откройте на Панели управления раздел региональных параметров, выбрав опции «Пуск?Выполнить», а потом введя команду control intl.cpl и нажав клавишу . В Windows XP отметьте закладку «Региональные параметры» и щелкните на кнопке «Настройка». После этого как в XP, так и в 2000 укажите закладку «Дата», а затем формат yyyy-MM-dd из списка доступных кратких форматов (рис. 1). Теперь щелкните на OK столько раз, сколько понадобится, чтобы закрыть все окна.

Рис. 1. Выбор правильного формата даты позволяет упорядочивать папки, названные по датам, в хронологическом порядке

Далее добавьте команду, которая будет создавать папку с именем, основанным на дате указанного формата. Нажмите +E или каким-либо другим способом откройте Проводник Windows, выберите «Сервис?Свойства папки» и в раскрывшемся диалоговом окне щелкните на закладке «Типы файлов». В списке зарегистрированных типов файлов выберите позицию «Папка с файлами». Щелкните на кнопке «Дополнительно», чтобы раскрыть диалоговое окно изменения свойств типа файлов, а потом — на кнопке «Создать». В графе «Действия» укажите текст, который вы хотели бы видеть в контекстном меню (например, «Новая папка с сегодняшней датой в качестве имени»), а в графу «Приложение, исполняющее действие» введите последовательность cmd. exe /c md ?%1 %%DATE%%? (рис. 2). Вам нужно будет именно набрать команду на клавиатуре, а не вставить копию, с тем чтобы команда содержала прямые кавычки, а не открывающие слева и закрывающие справа. Дважды щелкните на OK, а потом на кнопке «Закрыть» для возвращения в Проводник. (В диалоговом окне редактирования типов файлов в Windows XP имеется программная ошибка, способная привести к ошибочному поведению компьютера при двойном щелчке на папке. Погрешность исправляется путем небольшого редактирования Реестра. Как это делается, рассказано на странице find.pcworld.com/48506.)

Рис. 2. Обведенная командная строка добавляет к меню правой кнопки мыши опцию создания папки, называемой по текущей дате

Теперь, щелкнув правой кнопкой мыши на папке в Проводнике, вы будете получать среди прочего и опцию «Новая папка с сегодняшней датой в качестве имени» или как вы там ее назвали (рис. 3). Выберите эту опцию, чтобы создать внутри той папки, на значке которой вы щелкнули правой кнопкой мыши, новую папку, и она получит в качестве названия текущую дату.

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

Поскольку внутри одной папки нельзя создать две подпапки с одним и тем же названием, то применять эту опцию в каждой папке можно только раз в день.

Дополнительные возможности использования дат

К сожалению, Windows 2000 настаивает на том, чтобы в названных таким образом папках присутствовало еще и указание дня недели (Mon, Tue и т.д.), что не позволяет папкам появляться в хронологическом порядке при упорядочении их по имени. Один из возможных способов обойти это ограничение заключается в том, чтобы выбрать опции «Вид?Упорядочить значки по?Изменить». Однако если это для вас слишком хлопотно или вы просто не хотите изменять свои региональные настройки с целью переписать даты в более упорядоченном формате, то можно создать командный файл (как для Windows 2000, так и для XP), предоставляющий дополнительные возможности для настройки формата данных.

Для начала запустите Блокнот или какой-нибудь другой текстовый редактор и введите в него текст, представленный на рис. 4. В командном файле, показанном на этом рисунке, использованы технические приемы, разработанные мастером по части написания таких файлов Тимо Салми (find.pcworld.com/48508), профессором университета г. Вааса в Финляндии. С примерами многих его технических приемов можно познакомиться, списав файл tscmd.zip по адресу find.pcworld.com/48509.

Рис. 4. Чтобы расширить возможности использования различных форматов даты для называния папок, создайте и настройте такой командный файл под свои нужды

Рассматриваемый файл прежде всего фиксирует точку, косую черту, дефис и пробел как разделительные знаки — символы, задающие границы данных, с которыми он далее работает. Затем файл обращается к значению переменной %DATE%, т.е. к текущей дате, и вставляет второй, третий и четвертый элементы даты (через разделители) в переменные %%f, %%g, %%h. Последние соответствуют месяцу, дню и году. Третья строка файла сохраняет значения дат в формате год-день-месяц, разделенные дефисами, в переменной today_. Пятая строка объединяет эту переменную с командой md (создать каталог) для создания папки с именем, соответствующим дате.

Если вы предпочитаете, чтобы в именах папок в качестве разделителя ставились точки, в частности 2005.10.31, замените на них два дефиса в третьей строке командного файла или вообще удалите дефисы в этой строке, и тогда получится имя файла наподобие 20051031. Чтобы установить желаемый порядок месяца, дня и года в названии файла, переставьте в нужном порядке переменные %%f, %%g, %%h в третьей строке.

Возможно, вам также придется изменить командный файл, чтобы он соответствовал выбранным региональным настройкам. Например, если вы указали формат даты yyyy-MM-dd, то для того, чтобы в качестве имени файла появлялись нужные части даты, замените 2-4 во второй строке командного файла на 1-3. Кроме того, вам, вероятно, понадобится переупорядочить элементы переменной таким образом, как описано в предыдущем абзаце.

Сделав все это, сохраните созданный командный файл под каким-нибудь удобным для опознания именем вроде datefolder.bat. Поместите его туда, где вы храните такие файлы, скажем, в папку под названием c:atch. Вернитесь теперь в диалоговое окно изменения свойств типа файлов и щелкните на кнопке «Создать», как объяснено выше. На этот раз в графу «Приложение, исполняющее действие» надо будет ввести команду cmd.exe /c c:datefolder.bat ?%1? (естественно, путь и имя командного файла могут быть другими). Дважды щелкните на OK, а затем на кнопке «Закрыть», чтобы вернутся в Проводник.

Если при введении текста в диалоговом окне «Новое действие» (оно открывается при нажатии на кнопку «Создать» в диалоговом окне изменения свойств типа файлов) вы допустили ошибку, то для ее исправления вам придется воспользоваться Редактором реестра. Для вящей безопасности предварительно создайте резервную копию своего Реестра. Затем выберите опции «Пуск?Выполнить», введите команду regedit и нажмите клавишу . Спускайтесь по дереву на левой створке окна до позиции HKEY_CLASSES_ROOT Directoryshell. Укажите папку с именем команды, которую вы только что добавили (в нашем примере это будет ?Новая_папка_с_с_сегодняшней _датой_в_качестве_ имени?), и дважды щелкните на значке «По умолчанию» на правой створке, чтобы открыть диалоговое окно изменения строкового параметра. Внесите нужные изменения или вообще удалите вашу только что созданную команду, щелкнув правой кнопкой на соответствующей папке на левой створке и выбрав «Удалить?Да». Подробнее об этом можно прочитать по адресу find/ pcworld.com/48514.


Scott Dunn. Keep Your Data Folder in Date Order Automatically. PC World, октябрь 2005 г., с. 142.


Создание собственного контекстного меню с использованием утилиты CMenuExtender

Как показывает только что прочитанная вами заметка, возможности Windows можно расширить всего лишь за счет добавления специфических команд к контекстному меню (вызываемому щелчком правой кнопкой мыши). Однако разве не здорово было бы, если бы эти команды к тому же можно было добавлять, не редактируя Реестр или не проходя через всякие другие трудности? Так вот, это обеспечит бесплатная утилита CMenuExtender — она позволяет создавать новые позиции контекстных меню для любых файлов и папок. Вы можете выбирать из того списка, куда разработчики утилиты включили наиболее полезные, по их мнению, команды, или использовать эту программу для запуска ваших собственных приложений или команд (правда, данная утилита не работает с осложненными командными строками типа той, что рассмотрена выше). Вы можете даже по своему усмотрению добавлять к контекстному меню множественные подменю. Разработчики программы ее больше не поддерживают, однако если вы сочтете, что она устроит вас и без поддержки, отправляйтесь за копией по адресу find.pcworld.com/48515.