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

Как быстро отправить файл по почте?

Добавлено: Пн фев 21, 2005 14:01
dmitri
Всем привет!
Возник вопрос: можно ли в тотале повесить быстрое клавиатурное сочетание на отправку какого-либо файла по почте в качестве приложенного к письму?
Можно конечно пользоваться контекстным меню файла, но процедура ступенчата и неудобна.
Если у кого есть есть мысли по поводу, буду очень рад.

Добавлено: Пн фев 21, 2005 15:33
Сергеич
А клиент какой почтовый?

Добавлено: Пн фев 21, 2005 17:52
dmitri
клиент- The Bat 3.0.1.33

Добавлено: Пн фев 21, 2005 20:44
Сергеич
Читать хелп про командную строку TheBat.

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

вот например пример скрипта:
'=========================================================
acc_name="AMail" 'название аккаунта
fld_name="Outbox" 'название папки
subj = "Пересылаю файлы" 'заголовок сообщения
tpl_file="c:\_aff_\TheBat\att.tpl" 'имя шаблона
need_pack=1 'Установите: 0 - не надо паковать, 1 - упаковать РАРом
email = "" 'Установите: "" - спросить email, любое другое - внести email автоматом
rar_exe = "C:\APack\WinRAR\Rar.exe"
'=========================================================

set WSHShell = WScript.CreateObject("WScript.Shell")
tb_exe = WSHShell.RegRead("HKCU\Software\RIT\The Bat!\EXE path")

Command = tb_exe & " /MAILU=" & acc_name & ";F=" & fld_name & ";S=""" & subj & """;"

if email = "" then
email = InputBox("Введите Email")
Command = Command & "TO=""" & email & """;"
else
Command = Command & "TO=""" & email & """;"
end if


set fso = WScript.CreateObject("Scripting.FileSystemObject")
set file = fso.OpenTextFile(fso.GetSpecialFolder(2).Path & "\tb_files_to_send.txt", 2, true)
set Args = Wscript.Arguments

if need_pack=1 then
arc_file = fso.GetSpecialFolder(2).Path & "\files.rar"
if fso.FileExists(arc_file) then
fso.DeleteFile(arc_file)
end if

pack_command = rar_exe & " a " & arc_file
for i=0 to args.count-1
pack_command = pack_command & " """ & args(i) & """"
next
file.WriteLine "files.rar"
for i=0 to args.count-1
file.WriteLine "- " & args(i)
next

WSHShell.Run pack_command, 1, true
command = command & "A=""" & fso.GetSpecialFolder(2).Path & "\files.rar" & """;"

else
for i=0 to args.count-1
command = command & "A=""" & args(i) & """;"
file.WriteLine args(i)
next
end if

Command = command & "T=""" & tpl_file & """;"

WSHShell.Run command, 1, false

Добавлено: Пн фев 21, 2005 20:45
Сергеич
Ессно это VBS-скрипт, надо сохранить в файле с расширением VBS

Добавлено: Вт фев 22, 2005 08:31
dmitri
Сергеич, спасибо, конечно... Но проблема в том, что я в программировании не силен. Может есть более популярное решение?

Добавлено: Вт фев 22, 2005 21:33
b01d
Возможен плагин наподобии BurnCD, только вместо "нарезать" - "отправить", да ещё чтоб в выпадающем списке адреса подгружал из БАТ'a и ОутГлюка.
!

Добавлено: Ср фев 23, 2005 02:11
StayAtHome
Ребята, а пункт контекстного меню "Отправить -> TheBat" вам чем не нравится?

Добавлено: Ср фев 23, 2005 21:44
b01d
Мне например тем, что надо мышку в руку брать. Хотя ведь можно и без мышки... надо попробовать :)

Добавлено: Чт фев 24, 2005 01:21
StayAtHome
Причем тут мышка? Я мышкой в ТС вообще не пользуюсь. А в меню "Отправить" можно много чего напихать. :) Например у меня там еще Samll CD writer. И тоже -- никакого плагина не надо. :)

Добавлено: Чт фев 24, 2005 09:48
Gimi
b01d писал(а):Возможен плагин наподобии BurnCD, только вместо "нарезать" - "отправить", ....
!
Отличная идея !!!
Вот что мне бы например действительно пригодилось.
Отправлять файл через меню "Отправить" не всегда удобно т.к. надо иногда паковать или еще как то модифицировать отправляемое ...

Добавлено: Чт фев 24, 2005 10:08
Сергеич
Можно и на тулбаре например или хотками.
Делается бат-файл или скрипт наподобии верхнего.
Вешается в тотал и никаких проблем..

(тот скрипт который вверху может и упаковать сам)
(В верхней части прописаны основные настройки)

acc_name="AMail" 'название аккаунта
fld_name="Outbox" 'название папки
subj = "Пересылаю файлы" 'заголовок сообщения
tpl_file="c:\_aff_\TheBat\att.tpl" 'имя шаблона
need_pack=1 'Установите: 0 - не надо паковать, 1 - упаковать РАРом
email = "" 'Установите: "" - спросить email, любое другое - внести email автоматом
rar_exe = "C:\APack\WinRAR\Rar.exe"

Измените настройки под себя и положите этот файл с в меню Отправить.

Добавлено: Пт мар 18, 2005 02:16
wwwad
Сергеич!!!
Спасибо за скрипт но чето не пашет наверняка проблема с файлом tpl_file="c:\_aff_\TheBat\att.tpl" 'имя шаблона - НЕТ у меня такого файла в папке с батом ! смотрел в старых версиях = тоже нет. И еще вопросец - а где указывать какой именно файл на отправку ???

acc_name="AMail" 'название аккаунта
fld_name="Outbox" 'название папки
можно пояснить что это ? надо ли мне их менять ?

Добавлено: Пн мар 21, 2005 12:00
Batya
wwwad
Поскольку Сергеич не отвечает, скажу за него.
Должно работать, если в параметрах вызова скрипта стоит %n.
А att.tpl - это шаблон письма, который ты должен предварительно создать - то, что у тебя в теле письма будет записано.

P.S. Сам не проверял, т.к. мне это не надо.
P.P.S. Глядя на код, сомневаюсь, что скрипт корректно работает с need_pack=0.

Добавлено: Вт мар 22, 2005 00:07
wwwad
пока есть след.непонятки :

1)Att.tpl - не могу понять как сделать так чтоб он появился. Весь thebat облазил - не нашел. Нашел где создавать шаблоны в в самой программе thebat - но после создания-изменения шаблонов - файл Att.tpl нигде не появляется - всю папку thebata облазил.

2) Не понимаю значения параметра acc_name="AMail" 'название аккаунта - это что ? что такое аккаунт в данном случае ? если это адрес куда посылаю письмо, для этого вроде есть переменная email. Или акаунт - имеется ввиду мой ???? если да то что там писать ? мой e-mail адрес ???

3)Так же не понятно значение fld_name="Outbox" 'название папки
- это надо так и оставить - или надо написать полный путь к папке outbox моего e-mail адреса в папке thebata ? например в моем случае будет так : fld_name="С:\Program Files\The Bat!\Mail\vadim422@yandex.ru\Outbox" ?????

4) про параметр %n. Я так понял это надо прописать в командную строку "name_skripta.vbs /%n" ? ДА ? хотя скрипт у меня и так запускался - просто в конце давал ошибку - кстати в том месте, где скрипт обращается к файлу Att.tpl :-(((


P.S. Может будет проще если скажу что мне вообще нужно.
Необходимо периодически пересылать по почте некий файл (его положение не меняется например C:\Отчет_за_день.xls). точнее их несколько. А еще лучше научиться пересылать по почте содержимое некоей папки - впрочем я и сам соображу как этот скрипт написать - главное понять как посылать скриптом хотя бы один файл ... Заранее спасибо кто откликнется на мою просьбу ...