View previous topic :: View next topic |
Author |
Message |
Avada
Joined: 01 Aug 2008 Posts: 10257 Location: Россия, Саратов
|
(Separately) Posted: Sat Sep 21, 2013 11:11 Post subject: |
|
|
Хотелось бы заполучить вариант скрипта, где реализованы:
1. Возможность добавлять в список исключений объекты с путями.
2. Возможность обработки одного выделенного объекта.
То есть предусмотреть и все остальные варианты, требующие открытия соответствующего диалога.
Если в процессе выполнения скрипта получится выбирать режим добавления (с путями или без них), было бы совсем замечательно. _________________ Даже самая богатая фантазия
Не представит себе наши безобразия.
Last edited by Avada on Sat Sep 21, 2013 11:14; edited 1 time in total |
|
Back to top |
|
|
Flasher
Joined: 06 Nov 2009 Posts: 14229 Location: Москва
|
(Separately) Posted: Sat Sep 21, 2013 11:13 Post subject: |
|
|
1. %L
2. Именно выделенного, не выбранного? _________________ Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой. |
|
Back to top |
|
|
Avada
Joined: 01 Aug 2008 Posts: 10257 Location: Россия, Саратов
|
(Separately) Posted: Sat Sep 21, 2013 11:17 Post subject: |
|
|
Flasher
1. Я там кое-что уточнил ещё. Хотелось бы одним скриптом, а не двумя разными. Но если это сложно, то ладно.
2. Думал об этом. Но, наверное, лучше только выделенного. Как в самом TC принято. А то выделим одно, курсор поставим в другое место, будет путаница... _________________ Даже самая богатая фантазия
Не представит себе наши безобразия. |
|
Back to top |
|
|
Flasher
Joined: 06 Nov 2009 Posts: 14229 Location: Москва
|
(Separately) Posted: Sat Sep 21, 2013 11:26 Post subject: |
|
|
Avada
Зачем двумя-то? Я лишь написал о замене параметра в кнопке.
2. Гм.. Как раз под выбранным подразумевается отсутствие выделения с постановкой курсора. Когда выделен хотя бы один объект, но курсор установлен в другом месте, то файл под курсором выбранным не считается. Так и принято в ТС.
Т.е. я так понимаю, что суть в появлении окна выбора?
Простое окно (да/нет) устроит? Или нужно, чтобы на каждой кнопке был написано предназначение? _________________ Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой. |
|
Back to top |
|
|
Avada
Joined: 01 Aug 2008 Posts: 10257 Location: Россия, Саратов
|
(Separately) Posted: Sat Sep 21, 2013 11:33 Post subject: |
|
|
Flasher
Не скриптов два, а кнопок две, оговорился.
С учётом разъяснений — можно и выбранный.
Да, хорошо бы использовать одну кнопку, а с путями или без — выбирать по ходу дела. Простое окно вполне устроит. _________________ Даже самая богатая фантазия
Не представит себе наши безобразия. |
|
Back to top |
|
|
Flasher
Joined: 06 Nov 2009 Posts: 14229 Location: Москва
|
(Separately) Posted: Sat Sep 21, 2013 12:38 Post subject: |
|
|
Avada
Так: Code: | '=================================================================================
' Добавление имён выбранных элементов в список исключений TC с активацией фильтра
' Параметры: %L "<путь к файлу-списку>"
' Пример: %L "%%COMMANDER_PATH%%\tcignore.txt"
'============================ Путь к утилите TCFS2 ===============================
TCFS2 = """%COMMANDER_PATH%\Utils\TCFS2\TCFS2.exe"""
'=================================================================================
Dim WSH : Set WSH = CreateObject("WScript.Shell")
IL = WSH.ExpandEnvironmentStrings(WScript.Arguments(1))
NL = vbNewLine : Title = "Добавление имён в список исключений"
Msg = MsgBox("Добавлять полные пути" & NL & "к именам выбранных элементов?",_
4163, Title) : If Msg < 6 Then Quit
With CreateObject("Scripting.FileSystemObject")
All = .OpenTextFile(WScript.Arguments(0), 1).ReadAll : Sps = All
If Msg = 7 Then
For Each F in Split(All, NL) : S = S & NL & .GetFileName(F) : Next
Sps = Mid(S, 3)
End If : Set List = .OpenTextFile(IL, 8, True)
End With : List.Write Sps : List.Close
WSH.Run TCFS2 & " /ef ""tcm(2922) tcm(2922), eval(tcini(Configuration, " &_
"IgnoreListFileEnabled, #)) | tcm(2922)""" : Quit
Sub Quit : Set WSH = Nothing : WScript.Quit : End Sub |
_________________ Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Last edited by Flasher on Sat Sep 21, 2013 17:46; edited 2 times in total |
|
Back to top |
|
|
Avada
Joined: 01 Aug 2008 Posts: 10257 Location: Россия, Саратов
|
(Separately) Posted: Sat Sep 21, 2013 14:36 Post subject: |
|
|
Flasher
Несколько файлов с путями — работает правильно.
Несколько файлов без путей — имя первого из файлов прицепляется в хвост последней имевшейся в списке исключений строки.
Один файл под курсором без пути — аналогично.
Один выделенный файл с путём — аналогично.
Один файл под курсором с путём — работает правильно.
Один выделенный файл без пути — работает правильно.
(Кстати, заголовок "Добавление имён в список исключений" полностью не отображается. У себя убрал "имён", чтобы покороче вышло.) _________________ Даже самая богатая фантазия
Не представит себе наши безобразия. |
|
Back to top |
|
|
Flasher
Joined: 06 Nov 2009 Posts: 14229 Location: Москва
|
(Separately) Posted: Sat Sep 21, 2013 14:52 Post subject: |
|
|
Avada wrote: | Один выделенный файл с путём — аналогично.
Один файл под курсором с путём — работает правильно. | Не может такого быть. Это идентичные условия.
Я перед выкладкой тестировал: никаких проблем с хвостом не наблюдалось.
Версия винды, TC и интерпретатора какие?
Заголовок не влезает из-за использования шкур. Убери пробелы перед словом "Добавление". _________________ Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой. |
|
Back to top |
|
|
Avada
Joined: 01 Aug 2008 Posts: 10257 Location: Россия, Саратов
|
(Separately) Posted: Sat Sep 21, 2013 15:27 Post subject: |
|
|
Flasher
Система и интерпретатор тут абсолютно ни при чём. Я понял, в чём дело. При многократной ручной чистке списка исключений последняя пустая строка то не удалялась (и тогда всё было нормально), то удалялась (курсор помещался в конец последней имеющейся строки, и получалось присоединение). При стандартном добавлении в список для TC тут нет никакой разницы. А для скрипта — есть.
Кстати, имею предложение по содержательной части запроса. Лучше без всяких отдельных строк с расшифровкой "нет" и "да" просто вывести вопрос: "Добавить всё выбранное с путями?" Кнопка" "Да" — с путями, "Нет" — без путей. Именно в таком порядке идут кнопки в диалоге настроек, так что всё логично и понятно.
С заголовком понятно. Убрал пробелы: впритык, но влезает. _________________ Даже самая богатая фантазия
Не представит себе наши безобразия. |
|
Back to top |
|
|
Flasher
Joined: 06 Nov 2009 Posts: 14229 Location: Москва
|
(Separately) Posted: Sat Sep 21, 2013 16:03 Post subject: |
|
|
Avada wrote: | При многократной ручной чистке списка исключений | Через страницу настроек ТС или редактор?
Собственно, что теперь по этому вопросу? Какие предлагаются коррективы?
Avada wrote: | Лучше без всяких отдельных строк с расшифровкой "нет" и "да" просто вывести вопрос: "Добавить всё выбранное с путями?" | Я с самого начала думал, как лучше. Написал, потом не стал исправлять (мол, какая разница, коротко и ясно).
Тогда, может, "Добавлять полный путь к именам выбранных элементов?" ?
Если же писать как ты предлагаешь, то по логике кн. "Нет" ничем не будет отличаться от кн. "Отмена". _________________ Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой. |
|
Back to top |
|
|
Avada
Joined: 01 Aug 2008 Posts: 10257 Location: Россия, Саратов
|
(Separately) Posted: Sat Sep 21, 2013 16:34 Post subject: |
|
|
Flasher wrote: | Через страницу настроек ТС или редактор? |
Через страницу настроек.
Flasher wrote: | Собственно, что теперь по этому вопросу? Какие предлагаются коррективы? |
А вот это не знаю. Лично я просто буду знать, что такое бывает и надо это учитывать.
Flasher wrote: | Тогда, может, "Добавлять полный путь к именам выбранных элементов?" ? |
Да, вполне. _________________ Даже самая богатая фантазия
Не представит себе наши безобразия. |
|
Back to top |
|
|
Flasher
Joined: 06 Nov 2009 Posts: 14229 Location: Москва
|
(Separately) Posted: Sat Sep 21, 2013 17:43 Post subject: |
|
|
Avada wrote: | А вот это не знаю. | Единственный способ с правильным форматированием - проверять последнюю строку в файле игнора на предмет наличия перевода строки. К сожалению в vbs нет возможности считывать строки с конца, а построчное считывание с начала замедлит скорость выполнения (чего мне лично не хотелось бы).
Когда я писал первый вариант скрипта, то я понимал, что ручное редактирование уже утеряет свою актуальность, ибо кроме как для тестов не потребуется.
Есть ещё грязный вариант, в котором при наличии перевода будут формироваться пустые строки: в 17-ой строке убрать красное: Sps = Mid(S, 3) либо добавить ...WriteLine... в 19-ой.
Текст сообщения поправил. _________________ Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой. |
|
Back to top |
|
|
Avada
Joined: 01 Aug 2008 Posts: 10257 Location: Россия, Саратов
|
(Separately) Posted: Sat Sep 21, 2013 19:17 Post subject: |
|
|
Flasher
Да, так явно лучше.
Пока с переводом строк заморачиваться не буду, потом попробую.
А насчёт неактуальности ручного редактирования (того, которое в диалоге) — всякие ситуации бывают. И не только связанные с тестированием. Например, чистить по прошествии времени список от ненужных больше строк мне приходилось неоднократно. _________________ Даже самая богатая фантазия
Не представит себе наши безобразия. |
|
Back to top |
|
|
Flasher
Joined: 06 Nov 2009 Posts: 14229 Location: Москва
|
(Separately) Posted: Mon Mar 30, 2015 22:18 Post subject: |
|
|
Avada
Попробуй этот вариант. Помимо решения обсуждаемой проблемы добавлена поддержка имён с Юникодом.
Переводов строк в конце может быть много, останется всегда один. _________________ Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Last edited by Flasher on Tue Mar 31, 2015 01:24; edited 2 times in total |
|
Back to top |
|
|
Avada
Joined: 01 Aug 2008 Posts: 10257 Location: Россия, Саратов
|
(Separately) Posted: Mon Mar 30, 2015 23:58 Post subject: |
|
|
Flasher
Спасибо, но тестированием займусь позже, когда на это время будет. _________________ Даже самая богатая фантазия
Не представит себе наши безобразия. |
|
Back to top |
|
|
|