Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Сети";
Текущий архив: 2004.08.29;
Скачать: [xml.tar.bz2];

Вниз

Помогите сделать отправку письма в консольном приложении   Найти похожие ветки 

 
Пиво   (2004-05-26 05:48) [0]

Уважаемые программисты.
Я не смог найти статью по отправке электронной почты из   консольного приложения на Delphi, пожайлуста помоите мне кому не лень!
Заранее благодарен.


 
Polevi ©   (2004-05-26 07:52) [1]

из GUI приложения можешь ?


 
Пиво   (2004-05-27 05:43) [2]

А что такое GUI приложение?


 
CPAS   (2004-05-27 06:21) [3]

GUI - Graphic User Interface - Графический пользовательский интерфейс.
А почту ты отправлять можно двумя способами, которые прекрастно работают как в консолях, так и в обычных приложениях:
1. с помощью MAPI.
2. с помощью функции ShellExecute.

Пример

ShellExecute(Application.Handle, nil, PChar("mailto:email_address?body=body_here&subject=subject_here"), nil, nil, SW_SHOWNORMAL)


 
BiN ©   (2004-05-27 09:32) [4]

CPAS   (27.05.04 06:21) [3]
А почту ты отправлять можно двумя способами


ну это ты зря. ручками, батенька, ручками (Rouse_, кажется, уже несколько раз выкладывал пример SMTP с использованием обычных сокетов)

1. с помощью MAPI.
2. с помощью функции ShellExecute.


эти 2 метода завязаны на продукции 3-их фирм, что не есть хорошо для серьезного приложения.


 
ORMADA ©   (2004-05-27 09:41) [5]

Indy заюзать можно

program SendMail;
{$APPTYPE CONSOLE}
uses
 IdMessage, IdSMTP, SysUtils;
var
 M: TIdMessage;
 SMTP: TIdSMTP;
begin
{
структура сообщения
1 От кого
2 Кому
3 Тема
4 Тело
5 Хост (mail.ru)
6 UserName
7 UserPass
}
 if ParamCount < 7 then
 begin
   writeln("Message Structure");
   writeln("1 From <x@mail.ru>");
   writeln("2 To");
   writeln("3 Subject");
   writeln("4 Body");
   writeln("5 Host (mail.ru-194.67.23.111)");
   writeln("6 UserName");
   writeln("7 UserPass");
   Exit;
 end;
 try
   M := TIdMessage.Create(nil);
   M.From.Text := Paramstr(1); //отправитель
   M.Recipients.Add;
   M.Recipients.Items[0].Text := Paramstr(2); //Получатель
   M.Subject := Paramstr(3); //Тема письма
   M.Body.Add(Paramstr(4));

   SMTP := TIdSMTP.Create(nil);
   SMTP.AuthenticationType := atLogin;
   SMTP.Host := Paramstr(5); // mail.ru - 194.67.23.111
   SMTP.Username := Paramstr(6); // в формате usermane@mail.ru
   SMTP.Password := Paramstr(7);
   try
     SMTP.Connect;
     if SMTP.Connected then
     begin
       SMTP.Send(M);
       SMTP.Disconnect;
       writeln("message send!");
     end;
   except
     writeln("cant conneted to server-> " + Exception(ExceptObject).Message);
   end;
 finally
   FreeAndNil(M);
   FreeAndNil(SMTP);
 end;
end.


 
Пиво   (2004-05-29 04:42) [6]

Спасибо, попробую днём


 
Winni   (2004-06-26 14:50) [7]

Спасибо, это действительно работает, и кроме того - понятно.



Страницы: 1 вся ветка

Форум: "Сети";
Текущий архив: 2004.08.29;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.46 MB
Время: 0.026 c
3-1091447741
DSKalugin
2004-08-02 15:55
2004.08.29
Агрегатные функции со строками AVG(), min(),max()...


1-1092493911
Kirsanch
2004-08-14 18:31
2004.08.29
TService


6-1088354563
rolex
2004-06-27 20:42
2004.08.29
При отправке e-mail (TidSMTP) программа "подвисает".


1-1092374912
COOLer
2004-08-13 09:28
2004.08.29
TPanel &amp; Drag


9-1084373855
S.W.I.N.E.
2004-05-12 18:57
2004.08.29
Крысы и DelphiX





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский