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

Добавлено: Пн май 07, 2012 00:08
shveicar
Tol!k
Вам также, Большое Спасибо, никаких проблем, нет - можно сделать несколько батников с разными числовыми значениями, повесить их на кнопки и вуаля..
Разница, только, как Я уже упомянул, в скорости обработки, но главное, - всё работает.

Добавлено: Пн май 07, 2012 00:31
Flasher
Tol!k писал(а):а в чём профит изменения параметров?
А ты прочти 2, 3 пункты. Выбор одного-двух окон с заданием чисел, ничего в кнопке менять при необходимости не придётся. Вариантов можно задать несколько.

Добавлено: Пн май 07, 2012 00:49
Tol!k
можно сделать несколько батников с разными числовыми значениями,
Выбор одного-двух окон с заданием чисел,
но ЗАЧЕМ?
Всё равно же ищется _единственное_ совпадение начало*.ext -- начало*\
так почему не задать максимально широкий диапазон поиска и больше не париться?
т.е. если найдено 2 (и более) совпадений – берётся диапазон на 1 символ шире;
если ни одного — файлы просто не перемещаются

Добавлено: Пн май 07, 2012 01:07
Flasher
Tol!k писал(а):но ЗАЧЕМ?
Зачем - я написал:
Flasher писал(а):ничего в кнопке менять при необходимости не придётся
что ускоряет подход в решении вновь возникшей задачи.
Tol!k писал(а):так почему не задать максимально широкий диапазон поиска и больше не париться?
Потому что это ограничит скорость обработки. В большинстве случаев более 10 символов не потребуется. Не 255 ставить же.
И начальное кол-во уж точно в разных случаях устанавливать новое придётся.
Окна всегда нужны для универсальности. Параметры - для более частых случаев.

Добавлено: Пн май 07, 2012 01:17
Tol!k
> Потому что это ограничит скорость обработки.
На полсекунды? :D

> Не 255 ставить же.
(255 - расширение - x:\ - 1) / 2

> В большинстве случаев более 10 символов не потребуется.
Найдено единственное совпадение – выход из цикла, и все дела.

> И начальное кол-во уж точно в разных случаях устанавливать новое придётся.
Ну а смысл? Хоть с 1 начинай, всё равно результатом должно быть единственное совпадение

Добавлено: Пн май 07, 2012 01:17
shveicar
Господа.
Позвольте и мне добавить: Когда под рукой нет никаких инструментов - кроме отвертки, придется и ей - гвозди забивать. Но если есть выбор, каждый Сам решает, какой у него будет любимый инструмент.

Добавлено: Пн май 07, 2012 01:28
Flasher
Tol!k писал(а):На полсекунды?
Смотря сколько папок в получателе, файлов в каждой папке, какой камень, диск, число работающих сервисов, программ и т.д. Может быть легко и более 10 сек. Условия бывают разные.
Tol!k писал(а):(255 - расширение - x:\ - 1) / 2
Зачем делить на 2?
Tol!k писал(а):Найдено единственное совпадение – выход из цикла, и все дела.
Там один выход из цикла. У меня же три цикла. Выйти из промежуточного не получится.
Tol!k писал(а):Ну а смысл? Хоть с 1 начинай, всё равно результатом должно быть единственное совпадение
Опять же возвращаемся к скорости обработки. Лишний проход не нужен.

Добавлено: Пн май 07, 2012 01:35
Tol!k
Зачем делить на 2?
результатом перемещения по максимуму будет
x:\ совпадение \ совпадение .расширение

Добавлено: Пн май 07, 2012 01:51
Flasher
Tol!k
Можно поконкретней? Пока не понял.

Добавлено: Пн май 07, 2012 02:10
Tol!k
если результирующее полное имя будет длиннее
x:\ *здесь 123 символа* \ *здесь 123 символа* .ext
можно поиметь проблемы

Добавлено: Пн май 07, 2012 02:14
Flasher
Tol!k
Берём папку "1" в корне диска. Получается 255 - x:\1\ - расширение
Зачем тут на 2 делить?

Добавлено: Пн май 07, 2012 02:18
Tol!k
так перемещаем же в _одноимённую_ с файлом папку.
не замечаешь \ в середине пути?

x:\ это совпадение длиной в 123 символа \ это совпадение длиной в 123 символа .ext
так понятнее?

а с папкой "1" может совпасть только 1.ext

Добавлено: Пн май 07, 2012 02:25
Flasher
Tol!k писал(а):так понятнее?
Нет. Мы же не в одноимённую папку перемещаем. Длина имени и у файла и у папки может очень сильно разнится. Пример: 12аруеокнелнглнглнг4y35nesfsbq45yh4b\ - 12.txt, и наоборот.

Добавлено: Пн май 07, 2012 02:31
Tol!k
ОК, не в одноимённую.

В максимально длинную папку перемещаем максимально длинный файл, но чтобы без проблем в результате

Добавлено: Пн май 07, 2012 02:43
Flasher
В имени папки - 150 символов, в одном файле - 5, в другом - 80. Проверяем по первым 3-м символам.
Деление на 2 тут неуместно. Выставлять каждый раз самое длинное имя папки/файла для каждого совпадения - лишние трудозатраты. Поэтому лучше задавать ограничение. Предлагаю на этом закончить обмен своими взглядами. :wink: