Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

EMail [D5, Win95/98]


mentor ©   (2002-02-19 07:59:00) 

В программе требуется отправка некоторого файла по e-mail,
почтовым клиентом установленным по умолчанию.
Использую ShellExecute :
ShellExecute(Application.Handle,"open","perso@ikama.tol.ru",nil,nil,0).
Не подскажите ли, уважаемые, как здесь прицепить файл ?


SerVS - S   (2002-02-20 13:25:00) [1]

С клиентом по-умолчанию незнаю :(. А просто отправка возьми NMSMTP или тоже из Indy, я лично пользуюсь вторым


Mover   (2002-02-20 12:48:00) [2]

Если почтовый клиент TheBat! то отправка аттача выглядит так:

// путь к The Bat из реестра
function GetPathTheBat: String;
const
TheBat="Software\RIT\The Bat!";
begin
Result:="";
with TRegistry.Create do
try
RootKey:=HKEY_CURRENT_USER;
OpenKey(TheBat, False);
Result:=ReadString("ProgramDir");
finally
Free;
end;
end;

(* Отправка: EMAIL, FName - строки с адресом и именем файла *)

// Найти программу The Bat!
Path := GetPathTheBat;
if (EMAIL<>"") and (Path<>"") and
(MessageDlg("В?дправити файл на e-mail: "+EMAIL+" ?",
mtConfirmation, [mbYes, mbNo], 0) = mrYes) then begin
// здесь первый строковый параметр - адрес получателя,
// второй - тема, третий - отправляемый файл,
// queue - означает постановка в очередь ( папка OutBox ; можно поставить send - непосредственная отправка)
ShellExecute(Application.Handle,nil,PChar(Path+"thebat.exe"),PChar(Format("/NOLOGO /mail;to=%s;subject=%s;file="%s";queue",
[EMAIL,"registration",FName])),nil,SW_SHOWNORMAL);
end;


Если OutLook, то вроде бы так:

ShellExecute(Application.Handle,nil,PChar(Format("mailto:%s;subject=%s;%s", [EMAIL,"registration",FName])), nil, nil, SW_SHOWNORMAL);

Или file=%s; точно не пробовал!


Anatoly Podgoretsky   (2002-02-20 02:22:00) [3]

Здесь его прицеплять не где, протокол mailto: этого не предусмативает, пользуйся чем предложили.


VuDZ   (2002-02-19 12:10:00) [4]

MAPISendMail() - в свойствах указать атачмент(ы)


Наверх

Титульная страница Поиск, карта сайта Написать письмо