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

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

Как послать файл на e-mail посредством delphi? [D7, Win95/98, WinME, NT4, Win2k, WinXP]


Lomaster ©   (2004-09-22 16:54:00) 

Как послать файл на e-mail посредством delphi?


Никита   (2004-09-27 08:31:00) [1]

Поищи в статьях "Работа с протоколом SMTP" там это точно было
Если не нашел тогда зайди на www.delphiworld.narod.ru
там море таких статей


anonymous   (2004-09-25 10:59:00) [2]

Привет! В Delphi 6 существует закладка FastNet. В ней есть компонени ТNMSMTP и TNMPOP3, соответственно для отправки и приёма писем. К ним есть хороший help, там можно всё подробно узнать.
А если хочешь без компонентов, то есть модуль отправки писем, но я лично его непроверял.

unit Email;

interface

uses Windows, SysUtils, Classes;
function SendEmail(const RecipName, RecipAddress, Subject, Attachment: string): Boolean;
function IsOnline: Boolean;

implementation

uses Mapi;

function SendEmail(const RecipName, RecipAddress, Subject, Attachment: string): Boolean;
var  MapiMessage: TMapiMessage;
    MapiFileDesc: TMapiFileDesc;
    MapiRecipDesc: TMapiRecipDesc;
    i: integer;
    s: string;
begin
 with MapiRecipDesc do
   begin
     ulReserved:= 0;
     ulRecipClass:= MAPI_TO;
     lpszName:= PChar(RecipName);
     lpszAddress:= PChar(RecipAddress);
     ulEIDSize:= 0;
     lpEntryID:= nil;
   end;
 with MapiFileDesc do
   begin
     ulReserved:= 0;
     flFlags:=0;
     nPosition:= 0;
     lpszPathName:= PChar(Attachment);
     lpszFileName:= nil;
     lpFileType:= nil;
   end;
 with MapiMessage do
   begin
     ulReserved := 0;
     lpszSubject := nil;
     lpszNoteText := PChar(Subject);
     lpszMessageType := nil;
     lpszDateReceived := nil;
     lpszConversationID := nil;
     flFlags := 0;
     lpOriginator := nil;
     nRecipCount := 1;
     lpRecips := @MapiRecipDesc;
     if length(Attachment) > 0 then
       begin
         nFileCount:= 1;
         lpFiles := @MapiFileDesc;
       end
      else
       begin
         nFileCount:= 0;
         lpFiles:= nil;
       end;
   end;
   Result:= MapiSendMail(0, 0, MapiMessage, MAPI_DIALOG or MAPI_LOGON_UI or MAPI_NEW_SESSION, 0) = SUCCESS_SUCCESS;
end;

function IsOnline: Boolean;
var //RASConn: TRASConns;
   dwSize,dwCount: DWORD;
begin
 {//RASConns.dwSize:=SizeOf(TRASConn);
 //dwSize:= SizeOf(RASConns);
 Res:=RASEnumConnectionsA(@RASConns, @dwSize, @dwCount);
 Result:= (Res = 0) and (dwCount > 0); }
end;

end.


Наверх

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