Страница 1 из 3

SetFolderDate - Изменение даты/времени папок и файлов

Добавлено: Вт авг 16, 2011 09:43
Avada
На wincmd.ru некоторое время назад представлена новая версия SetFolderDate 1.5 от van Dusen. По высказанным в личку просьбам трудящихся создаю отдельную тему на форуме, а также даю ссылку на репак той же версии с поддержкой русского языка. Сопровождением этого средства я специально не занимаюсь, просто так обстоятельства сложились. :)
К сожалению, ни постоянной темы на оффоруме, ни нормальной документации у утилиты нет (это вообще слабое место данного разработчика). Однако там в принципе всё интуитивно понятно, так что разобраться можно быстро.

Если коротко, функциональность утилиты позволяет задавать дату/время одной или нескольких папок:
• по конкретно указанным дате/времени (включая текущие);
• по прежним дате/времени с заданным сдвигом;
• по самому новому (или, наоборот, самому старому) файлу;
Кроме того, можно менять дату/время входящих в папку файлов по такой информации в именах файлов или по метаданным определённых типов файлов (например, по дате снимка).
Ну и так далее. Для использования метаданных (как, впрочем, и для изменения некоторых других настроек) может потребоваться правка файла SetFolderDate.ini. Файл ExifTool.exe можно взять много где (например, здесь; эта внешняя утилита на форуме уже упоминалась). Уточните имя и путь, в моих настройках сделано под свои пути (в авторских, впрочем, тоже).

Для утилиты создаём кнопку или пользовательскую команду. [s]В "Параметрах" ставим %P%N (кавычки добавьте, если надо).[/s] Выбираем папки, запускаем и работаем. Выставляем опции, жмём "Предпросмотр", оцениваем предполагаемый результат. Устраивает — жмём "Выполнить".
Ну а с остальным те, кого это заинтересует, разберутся, думаю, сами.

Добавлено: Вт авг 16, 2011 11:35
AR74
Вот спасибо!
По глупости переместил 500 гб недосортированного музархива, не выставив галку "копировать дату создания/изменения каталогов".

Спасибо и за перевод - все понятно.

Добавлено: Пн окт 17, 2011 22:39
kaznet
На windows 7 эта утилита почему-то не запускается. Есть ли аналоги? Задача состоит в следующем: нужно синхронизировать время изменения папок между дисками, но так, чтобы не трогать содержимое этих папок, т.е. не копировать, и не перемещать.

Добавлено: Сб окт 22, 2011 20:54
beb
kaznet
Не подтверждаю. На Win 7 x64 запускается. Т.е. у вас какая-то локальная проблема.

Добавлено: Вс окт 23, 2011 00:20
kaznet
beb писал(а): Не подтверждаю. На Win 7 x64 запускается. Т.е. у вас какая-то локальная проблема.
После шаманств запустить удалось, но поставленную задачу это всё равно не решило.

Добавлено: Вс окт 23, 2011 01:13
Avada
kaznet
И не решит. Отвечено в личку.

Добавлено: Ср окт 15, 2014 16:46
helb
Модифицировал эту штуку чуть-чуть:
1) Если не включена рекурсивная замена, для определения даты учитывает не только файлы, но и подпапки.
2) Добавил поддержку листа выделенных папок в качестве параметра: без нее мусорит в буфере. Параметр в TC: %WL

[s]Архив со скриптом и скомпилированным 64-битным exe'шником[/s]

Добавлено: Ср окт 15, 2014 19:10
Skif_off
helb
Почему х64? х86 универсальнее.

Добавлено: Ср окт 15, 2014 22:22
Avada
Skif_off
Я бы спросил не "почему", а "зачем". Впрочем, суть дела не изменится. :wink:

helb
Включить в архив (хоть в модифицированном виде, хоть в авторском, хоть в моём) существующий INI-файл мешали какие-то очень принципиальные соображения?

Добавлено: Чт окт 16, 2014 06:39
helb
Потому что 2014 год, 64-битный процессор, 64-битная ОС — зачем компилить в ненативные 32? Я просто изначально один скрипт выложить хотел и мой экзешник бонусом докинул.
Ini забыл просто: хотел перед добавлением в архив сравнить, что я в нем наисправлял.

Скомпилировал в 32-битный и добавил ini (скопировал руссификацию в него) и перезалил

Добавлено: Чт окт 16, 2014 07:34
Avada
helb
Может, следуя такой логике, тогда и все 32-битные плагины разом поотменять заодно с 32-битным TC? :)
А если серьёзно, то у немалого числа участников форума — портабельные сборки на основе комбинированных версий TC (32+64) для нормальной работы на разных ОС.

Добавлено: Чт окт 16, 2014 08:31
helb
Avada
Ну так я к тому, что вполне логично, если у меня всё 64-битное, то и компилировать в 32-бита для себя у меня нет ни единой причины. Я же всё-таки не программный продукт с целью охватить максимальную аудиторию выпускаю — чем пользовался уже несколько недель, то изначально и выложил.

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

Добавлено: Чт окт 16, 2014 08:40
Avada
helb
При выкладывании в общий доступ всякого-разного сопутствующего к TC действует несколько иная логика. В частности, в среде плагинописателей вообще не принято выкладывать 64-битные версии без 32-битных. Невзирая на предполагаемую степень охвата аудитории. И невзирая на то, кто чем реально пользуется сам. Полагаю, что с этим вопросом всё уже ясно.
На тестирование модифицированной утилиты пока нет времени, посмотрю позже.

Добавлено: Вт ноя 11, 2014 13:09
gora
helb
Оно же не работает! При запуске показывает ошибку:
---------------------------
AutoIt Error
---------------------------
Line 501 (File "E:\My Downloads\SetFolderDate_1.5.1\SetFolderDate.au3"):

Dim $lstPreviewItem[$strTCPNList[0]+1][14]
Dim $lstPreviewItem[$strTCPNList^ ERROR

Error: Subscript used with non-Array variable.
---------------------------
ОК
---------------------------

Авторский исходник работает.

Добавлено: Вт ноя 11, 2014 14:07
helb
gora
Не работало бы, я бы и не выкладывал. Компилировал последней портабельной версией AutoIt3. Проверял только оба exe, как с параметром %WL так и без (буфер), активно пользую x64.
Если у вас что-то иначе, может что-то и вылезать.