Ru-Board.club
← Вернуться в раздел «Прикладное программирование»

» Отправка письма из программы на Delphi 7

Автор: mastervigo
Дата сообщения: 20.10.2003 11:17
подойдёт любой пример, лишь бы работало
Автор: GreyGendalf
Дата сообщения: 20.10.2003 12:09
mastervigo
в D6 были примеры для Indy.
из D7 примеры зачем-то убрали. а на оф сайте ничо нет.
думаю, без сильных переделок примеры из D6 должны подойти.
мыло давай - вышлю.
Автор: mastervigo
Дата сообщения: 20.10.2003 12:54
GreyGendalf
смотри ПМ

Я сделал вот так:
var
msg: tidmessage;
Lotus: TIdSMTP;
begin
try
msg:= tidmessage.create(owner);
with msg do
begin
Clear;
From.Address := 'qwerty1@qwerty.ru';
Recipients.EMailAddresses := 'qwerty2@qwerty.ru';
Subject := 'Server is down!';
Body.Add(E.Message);
end;
Lotus.Connect;
if Lotus.Connected then
Lotus.Send(msg);
msg.Free;
finally
close;
end;
end;
Автор: mcs
Дата сообщения: 29.10.2003 16:14
GreyGendalf
Indy forever, look in sources..
Автор: YURGEN
Дата сообщения: 29.10.2003 19:44
http://www.indyproject.org/indy/demodownloads/I9D6_Demos_24Nov02.zip

Demo Source code [Updated November 26, 2002]
Автор: ShIvADeSt
Дата сообщения: 30.10.2003 01:46
Вот еще один пример. Вроде бы рабочий (не пробовал).

unit Email;

interface

uses Windows, SusUtils, 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
ulRecerved:= 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: TRASConn;
dwSize,dwCount: DWORD;
begin
RASConns.dwSize:= SizeOf(TRASConn);
dwSize:= SizeOf(RASConns);
Res:=RASEnumConnectionsA(@RASConns, @dwSize, @dwCount);
Result:= (Res = 0) and (dwCount > 0);
end;

end.
Автор: dihotomchik
Дата сообщения: 25.02.2004 09:25
А как на счёт кодировки? Не у кого проблем не возникало? Может быть есть у кого-нибудь ссылочки на доки или факи? Буду премного благодарен...
Автор: lucikan
Дата сообщения: 28.02.2004 09:14
Привет!

Посмотри на synapse.

Synchronous TCP/IP Library for Delphi,
C++ Builder, Kylix and FreePascal

This is list of basic features:

Synapse is not components, but only classes and routines. Not needed any installation! Just add unit to your uses.
Working under Windows and under Linux.
Can compile by Delphi, C++Builder, Kylix and FreePascal.
Support for communicating by dynamily loaded Winsock or Libc in blocking mode (or any other compatible library).
Supported is TCP, UDP, ICMP and RAW protocols.
Limited support for non-blocking communication mode.
Can use IPv4 and IPv6 addresses.
Native full SOCKS5 proxy support for TCP and UDP protocols.
Native full SOCKS4/4a proxy support for TCP protocol.
Support for TCP through HTTP proxy tunnel.
Support for TCP with SSL/TLS by OpenSSL or SSLeay.
Support for TCP with SSL/TLS by StreamSecII.
Support for PING request by ICMP or ICMPv6.
Support for ASN.1 coding and decoding.
Support for DNS (TCP or UDP) with many non-standard records (include zone transfers).
Support for character code transcoding. Supported charsets are basic ISO codings (ISO-8859-x), windows codings (CP-125x), KOI8-R, CP-895 (Kamenicky), CP-852 (PC-Latin-2) and UNICODE (UCS-4, UCS-2, UTF-7 and UTF-8).
Support for character replacing during character set transforms. (i.e. for remove diakritics, etc.)
Support for coding and decoding MIME e-mail messages (include character conversion of all supported charsets), include inline MIME encoding.
Support for SMTP and ESMTP protocol. SSL/TLS mode also supported.
Support for HTTP protocol 0.9, 1.0 and 1.1. Can handle ANY HTTP method, KeepAlives, 100-status, Cookies and partial document downloading. Https also supported.
Support for SNMP protocol (include traps). Easy getting SNMP tables, etc.
Support for NTP and SNTP protocol (include broadcast client).
Support for POP3 protocol (classic and APOP login). SSL/TLS mode also supported.
Support for FTP protocol (support many firewalls include customs, upload and dowload resumes, transfer between two FTP servers). Implemented directory list parsing too. SSL/TLS support.
Support for TFTP protocol (cliend and server).
Support for LDAP protocol.
Support BSD Syslog client for unified platform independent logging capability.
Support for NNTP (Network News Transfer Protocol) include SSL/TLS support.
Support for Telnet script client.
Support for Base64 and Quoted-pritable coding and decoding.
Support for UUcode, XXcode and Yenc decoding.
Support for calculating CRC16, CRC32, MD5 and HMAC-MD5.
Support for autodetecting DNS servers or proxy settings.
Wake-on-lan
Автор: dihotomchik
Дата сообщения: 01.03.2004 08:23
Большое благодарю.. Иду смотреть.. Я кодировку так и не поборол. И не все SMTPишники мои письма пропускают в необрезанном виде.
Автор: Audciz
Дата сообщения: 02.03.2004 17:16
Не понял, когда это убрали из Д7 Инди, но у мне всё ОК. Компонент называется TidSMTP.
Есть класная функция QuickSend. Позволяет высылать письма почти анонимно...

Добавлено
Кстати, закладка называется Indy Clients.
Автор: Screv
Дата сообщения: 22.05.2004 18:56
Привет! шоб анонимно отослать почту я использую это:

procedure TForm1.Button1Click(Sender: TObject);
var
IdSMTP: TIdSMTP;
idMessage: TidMessage;
begin
idMessage := TIdMessage.Create(nil);
try
with idMessage do
begin
Recipients.Add.Address :='loh@yandex.ru;{ кому отправляем }
Subject :='Ку-ку';{Тема}
From.Address := 'Inter@yandex.ru';{ свое мыло }
Body.Text := 'Добрый день'+#13+
'Для того чтобы отписаться от этой , пишите mailto:Inter@yandex.ru';
end;
IdSMTP := TIdSMTP.Create(nil);
with IdSMTP do
try
Host := 'oriontv.net'; { сервер исходящей почты }
Connect;
Send(idMessage);
Disconnect;
finally
Free;
end;
finally
Free;
end;
end;

К адресам можно подставить лист боксы, едиты или мемо.
Автор: Sisbkoshup000
Дата сообщения: 10.02.2007 00:09
Вот в момент

IdSMTP.Connnect(); // происходит какая то странная ошибка


Не коннектится!

Подскажите в чем фишка?

Добавлено:
Заранее благодарен!
Автор: Zergboy
Дата сообщения: 21.02.2007 23:53

Цитата:
IdSMTP.Connnect(); // происходит какая то странная ошибка

какая странная? код ошибки.
а у тебя часом фаервол не установлен? и какие настройки встроеного брэндмауэра виндов?
Автор: Sisbkoshup000
Дата сообщения: 23.02.2007 09:31
Короче могу сказать следующее: в этом месте генерируется исключение в процессе выполнения!

Всякие там брандмауэры и фаерволы мне мешать не могут ибо все поотключал с целью проведения тестов!

Вот такая вот проблема!
Автор: MrZeRo
Дата сообщения: 23.02.2007 11:11
Это рабочий код, я аналогичный использую уже давно.
Хост правильно указан? TCP/IP протокол настроен? ()

Автор: Sisbkoshup000
Дата сообщения: 24.02.2007 19:30
Насчет протокола утвержать не могу! Т.ч. будте добры подскажите че там и как настроит?

А хост вроде верный т.к. у кого-то работает там!

Страницы: 1

Предыдущая тема: Генерация звуковых сигналов в Delphi


Форум Ru-Board.club — поднят 15-09-2016 числа. Цель - сохранить наследие старого Ru-Board, истории становления российского интернета. Сделано для людей.