Обсуждение темы "Обмен кнопками"

Обсуждение вопросов автоматизации Total Commander с помощью сторонних программ и скриптовых технологий.

Модераторы: Avada, CaptainFlint, Nik, d-view, Моторокер

Cobblestone-TLT
Сообщения: 34
Зарегистрирован: Сб фев 01, 2014 14:26

Сообщение Cobblestone-TLT »

Chelipuo писал(а):Вот здесь уважаемый StrangeRRor выкладывал код кнопки для отправки файла в письме через Thunderbird. Поскольку для меня она оказалась весьма полезной, набросал батник для отправки в письме нескольких выделенных файлов...
Нет ли возможности сделать подобный батник и кнопку для The Bat! ? В теме есть кнопка для прикрепления к письму файла под курсором, но хочется для всех выделенных.

[mod="Avada"]Замечание за оффтоп. Где следует давать запросы на кнопки, говорилось в разных темах многократно. Перенесено по принадлежности. В сообщение добавлены ссылки.[/mod]
Аватара пользователя
Flasher
Сообщения: 14229
Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва

Сообщение Flasher »

Cobblestone-TLT
Письмо в исходящих или новое? Если новое, то зачем The Bat?
Или нужно только окно на редактирование открыть с прикреплённым списком (по этому примеру)? Т.е. автоматическая отправка не требуется?
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Cobblestone-TLT
Сообщения: 34
Зарегистрирован: Сб фев 01, 2014 14:26

Сообщение Cobblestone-TLT »

Flasher писал(а):Cobblestone-TLT
Письмо в исходящих или новое? Если новое, то зачем The Bat?
Или нужно только окно на редактирование открыть с прикреплённым списком по этому примеру? Т.е. автоматическая отправка не требуется?
В моем предыдущем сообщении есть ссылка на кнопку (благодаря уважаемому Avada), которая:
1 запускает The Bat!
2 создает новое письмо в исходящих
3 прикрепляет к нему файл под курсором из активной панели
4 заполняет поле "Тема" именем прикрепленного файла
5 открывает это письмо для редактирования.

Т.о. остается только назначить адрес(а) получателя(ей) и нажать "Отправить". Так вот требуется точно такой же результат от нажатия кнопки, только с возможностью прикрепить к письму все выделенные в активной панели файлы, а не только тот, что под курсором. Поле "Тема", если возможно, так же заполнять именем файла под курсором.

Заранее благодарен!

p.s. The Bat! нужен потому, что в нем адресная книга. Получатели как и файлы всегда разные, потому привязаться к конкретным путям файла(ов) или адресу(ам) отправления в самой кнопке(скрипте) возможности нет.
p.p.s. Автоматическая отправка письма не требуется, только создать, прикрепить и открыть по вышеуказанному описанию.
Аватара пользователя
Avada
Сообщения: 10541
Зарегистрирован: Пт авг 01, 2008 16:17
Откуда: Россия, Саратов

Сообщение Avada »

Cobblestone-TLT писал(а):Так вот требуется точно такой же результат от нажатия кнопки, только с возможностью прикрепить к письму все выделенные в активной панели файлы, а не только тот, что под курсором. Поле "Тема", если возможно, так же заполнять именем файла под курсором.
А учитывается, что вполне возможна ситуация, когда ни один из выделенных файлов не находится под курсором? Или определённый файл под курсором для поля "Тема" будет выбираться специально?
Даже самая богатая фантазия
Не представит себе наши безобразия.
Аватара пользователя
Flasher
Сообщения: 14229
Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва

Сообщение Flasher »

Cobblestone-TLT писал(а):В моем предыдущем сообщении есть ссылка на кнопку
Я потому дописку насчёт только прикрепления и сделал, потому что увидел в коде кнопки EDIT.
Cobblestone-TLT писал(а):Получатели как и файлы всегда разные, потому привязаться к конкретным путям файла(ов) или адресу(ам) отправления в самой кнопке(скрипте) возможности нет.
А я и не предлагал их прописывать в кнопке. Можно их вводить в окошке через пробел, например. Файлы и так понятно, что выбранные в панели будут.
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Cobblestone-TLT
Сообщения: 34
Зарегистрирован: Сб фев 01, 2014 14:26

Сообщение Cobblestone-TLT »

Flasher
Нет, вводить получателей в окошке мне не подходит. Мне требуется создать письмо в папке "Исходящие", прикрепить к нему все выделенные файлы в активной панели и открыть это письмо для редактирования. Так же хочется, чтобы в поле "Тема" вставлялось имя файла под курсором в той же (активной) панели (при этом не важно выделен этот файл или нет). Далее уже в самой программе я из адресной книги выбираю получателя или группу получателей (заранее созданную для рассылки) или такую группу и добавляю еще кого-то (это уже функционала кнопки не должно касаться), нажимаю отправить и письмо уходит (или закрываю его и оно остается висеть в исходящих, ждать пока до него снова дойдут руки).

Posted after 20 minutes:

p.s. Еще раз коротко: в первом моем сообщении указан образец функционала кнопки, я его попунктно расписал (на случай, если нету The Bat! под рукой и вживую увидеть как она работает нет возможности). Я лишь прошу расширить этот функционал так, чтобы с той же легкостью прикреплялся не один файл, а все выделенные (ничего более в функционале ни убавляя, ни добавляя). Раз возник такой вопрос, "Тема", если возможно, пусть будет именем файла под курсором, входит он в выделение или нет (читай список прикрепляемых к письму файлов) - не имеет значения. При этом имя почт.ящика в программе, как и в исходном варианте, желательно задавать либо параметром в кнопке вызывающей скрипт, либо в самом скрипте, т.к. ящиков тоже несколько и хочется иметь возможность отправки от разных имен, потому выбрать какой-то из них "по умолчанию" не подходит, а выбирать при запуске в вылетающем окошке - лишение клацанья мышкой, куда проще мне сделать нужное кол-во кнопок для всех рабочих ящиков почты и в дальнейшем давить на нужную.
Последний раз редактировалось Cobblestone-TLT Сб фев 01, 2014 23:03, всего редактировалось 1 раз.
Аватара пользователя
Flasher
Сообщения: 14229
Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва

Сообщение Flasher »

Cobblestone-TLT писал(а):Еще раз коротко
Не надо "коротко"...

Код: Выделить всё

'=================================================
' Открыть окно "Редактирование письма" в The Bat
' с прикреплёнными выбранными в панели TC файлами
' Параметры: %WL "<имя пользователя The Bat>" "%O"
'================= Путь к The Bat ================
Bat = """C:\Program Files\The Bat\thebat.exe"""
'=================================================
With WScript.Arguments
  If .Count = 0 Then WScript.Quit
  List = .Item(0) : User = .Item(1) : TName = .Item(2)
End With : Set FSO = CreateObject("Scripting.FileSystemObject")
For Each F in Split(FSO.GetFile(List).OpenAsTextStream(1,-1).ReadAll, vbNewLine)
  If F <> "" Then Sp = Sp & ";A=""" & F & """"
Next : CreateObject("WScript.Shell").Exec Bat & " /MAILU=""" & User & """" & Sp & ";S=""" & TName & """;EDIT"
Последний раз редактировалось Flasher Вт фев 04, 2014 21:09, всего редактировалось 2 раза.
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Cobblestone-TLT
Сообщения: 34
Зарегистрирован: Сб фев 01, 2014 14:26

Сообщение Cobblestone-TLT »

Flasher
Огромнейшее спасибо! То, что нужно!!
Сначала на одном из ящиков не пошло как надо, решилось удалением пробела из имени ящика в программе, и соответственно в параметрах кнопки, хотя оно там, как полагается, в кавычках.

Еще раз огромное спасибо! Этот скрипт сэкономит мне уйму времени, а как известно нет ничего в жизни дороже ;)
Аватара пользователя
Flasher
Сообщения: 14229
Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва

Сообщение Flasher »

Cobblestone-TLT писал(а):Сначала на одном из ящиков не пошло как надо
Поправил.
На здоровье. :wink:
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Cobblestone-TLT
Сообщения: 34
Зарегистрирован: Сб фев 01, 2014 14:26

Сообщение Cobblestone-TLT »

В ходе использования скрипта обнаружились некоторые "недоделки"...

1. Не открывается письмо для редактирования (автоматически). Программа запускается, письмо создается в папке "исходящие", все выделенные файлы прикрепляются, но письмо для редактирования (выставления списка получателей и собственно отправки) приходится открывать вручную (что несколько портит всю картину) :(
2. В поле "Тема" попадает только первое слово из имени файла под курсором. Заметил не сразу, т.к. отправляемые файлы не всегда содержат пробелы в своих именах. Вопрос конечно чисто эстетический, но если где-то просто не хватает пары кавычек, прошу поправить и это :)

Заранее спасибо!
Аватара пользователя
Flasher
Сообщения: 14229
Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва

Сообщение Flasher »

1. Такое происходит и при открытом Bat-e?
2. Кавычки добавлю.
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Cobblestone-TLT
Сообщения: 34
Зарегистрирован: Сб фев 01, 2014 14:26

Сообщение Cobblestone-TLT »

Flasher
Независимо, открыт или закрыт.

Причем этот недочет оказывается носит плавающий харакетер (т.е. в каких-то случаях письмо все же открывается для редактирования автоматически)

Posted after 7 minutes:

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

Как мне думается, при "натыкании" на пробел в строке для подстановки в "Тему" работа скрипта прерывается и последующие команды (т.е. /EDIT) не выполняются...

Таким образом, возможно, если решить проблему №2, замечание по пункту №1 отпадет само собой :)
Аватара пользователя
Flasher
Сообщения: 14229
Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва

Сообщение Flasher »

Cobblestone-TLT
Тогда, боюсь, я это стандартными средствами VBS не решу.
В программе есть команда /FOCUS, но максимум она может открыть нужную папку, письмо она не откроет...

Кавычки добавил.
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Cobblestone-TLT
Сообщения: 34
Зарегистрирован: Сб фев 01, 2014 14:26

Сообщение Cobblestone-TLT »

Flasher
Так все! Больше ничего и не требуется! Теперь имя файла под курсором обрабатывается корректно даже при наличии в нем пробелов и скрипт нормально отрабатывает все команды (в т.ч. и /EDIT)

Премного благодарен! :)
Аватара пользователя
Flasher
Сообщения: 14229
Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва

Сообщение Flasher »

Cobblestone-TLT
Я понял, дело в пробеле, который появляется до команды /EDIT. Команда не считывалась в случае, когда курсор стоит на файле с именем, где есть пробелы. Программа, как это обычно и происходит с комстрокой, отсекает всё, что идёт после последней закрывающей кавычки и пробела.

[mod="Avada"]Последующий запрос Cobblestone-TLT перенесён в более подходящую тему.
[/mod]
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Ответить