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

Вниз

Отправка почты   Найти похожие ветки 

 
TRSteep ©   (2008-09-03 08:58) [0]

как отправить простейшие письмо :)
нашел статью - делаю по ней

var
 Msg: TIdMessage;
begin
 With IdSMTP do
 begin
   Host := "smtp.yandex.ru"; {адрес SMTP сервера (или IP-Адресс)}
   Port := 25; {Порт SMTP сервера (по стандарту RFC 821 равен 25)}

   AuthType := atDefault;
   Username:="...";
   Password:="...";

   Connect; {Подключение к SMTP серверу}
 end;
 With Msg do
 begin
   Subject:="Тестовое сообщение"; //текст темы сообщения
   Recipients.EMailAddresses:="...@mail.ru"; //указываем адрес получателя
   From.Address:="...@yandex.ru";//указываем автора письма
   Body.Text:="Тестовый текст";//размещаем текст сообщения
   Date:=StrToDate("01.01.2009");//дата отправки письма, может быть любой
 end;

 if IdSMTP.Connected=True then  IdSMTP.Send(Msg);

 IdSMTP.Disconnect;


где текст жирный программа отваливаеться:

Project <project-name> raised exception class EAccessViolation with message "AccessViolation at address 0040408AC in module <project-name>".

пытаюсь понять что за зверь Msg: TIdMessage;
в справке написано что живет в файле IdMessage
нажимаю ctrl и давлю мышей на этот модуль - пишет не найдет.....
хотя ошибок при компиляции нет....

где что неправильно?

ps. Delphi 2006


 
Сергей М. ©   (2008-09-03 09:03) [1]


> где что неправильно?


В опциях окружения IDE не прописан путь к папке, где лежит IdMessage.pas


 
Anatoly Podgoretsky ©   (2008-09-03 09:14) [2]

> TRSteep  (03.09.2008 8:58:00)  [0]

> Project <project-name> raised exception class EAccessViolation with message "AccessViolation at address 0040408AC in module <project-name>".

Это явно не полное сообщшеие.


 
TRSteep ©   (2008-09-03 09:34) [3]

>Anatoly Podgoretsky
ну там еще Write of address 00428FBC

>Сергей М.
там действительно не прописано.
прописал Indy10 - все равно такая же ошибка....


 
TRSteep ©   (2008-09-03 09:38) [4]

причем там нет pas файлов - там dcu только....
это так должна быть?


 
Сергей М. ©   (2008-09-03 09:40) [5]


> прописал Indy10


Что такое "Indy10" ?


 
Сергей М. ©   (2008-09-03 09:42) [6]


> там нет pas файлов


Там их и не должно быть.

Про сквозной поиск файлов на дисках с пом. Проводника ты, конечно же, ничего не слышал ?


 
TRSteep ©   (2008-09-03 09:46) [7]

зачем сразу поискал
там папка $(BDS)\lib\ в ней папки Indy9, Indy10
я и дописал такой путь ..;$(BDS)\lib\Indy10


 
TRSteep ©   (2008-09-03 09:48) [8]

добавил в library path и в Browsing path


 
Сергей М. ©   (2008-09-03 09:49) [9]


> зачем сразу поискал


Т.е. Проводник категорично утверждает, что файл IdMessage.pas найден в папке

$(BDS)\lib\Indy10

а его там на самом деле нет ?!

Чудны дела твои, господи) ..


 
Сергей М. ©   (2008-09-03 09:59) [10]

Страшную тайну открою тебе :

в меню IDE "Search -> Find in files .." можно задать модель поиска (в твоем случае это TIdMessage = class), указать что поиск следует осуществлять в такой-то корневой папке и во всех вложенных подпапках - и среда покажет тебе имена файлов с полными абсолютными путями к ним, где встречается эта модель.


 
TRSteep ©   (2008-09-03 10:06) [11]

а! IdMessage.dcu там лежит - а IdMessage.pas сейчас нашел в
$(BDS)\source\Indy10\Protocols
потом еще сказал что не нашел IdCompilerDefines.inc
я нашел его в
$(BDS)\source\Indy10\Core\IdCompilerDefines.inc

все прописал library path и в Browsing path
вроде теперь нормально находит когда по контролу кликаешь

но при работе опять выдает ошибку


 
Сергей М. ©   (2008-09-03 10:08) [12]


> при работе опять выдает ошибку


Ну а сам объект класса TIdMessage за тебя кто будет создавать, Пушкин что ли ?


 
brother ©   (2008-09-03 10:14) [13]

> нашел статью - делаю по ней

копипастер? и то не все скопировал? )


 
Palladin ©   (2008-09-03 10:26) [14]

Ну так он же ее объявил в разделе перменных, должно работать... логично же :)


 
TRSteep ©   (2008-09-03 10:47) [15]


> Страшную тайну открою тебе :

Спасибо большое!


> копипастер? и то не все скопировал? )

вобще разные статьи смотрел
везде есть недочеты, где то модули не указаны какие, синтаксические ошибки и пр.
да и во основном одна - две статьи везде одни и теже
где вобще работают с NMsmtp; которого нету у меня...

> Ну а сам объект класса TIdMessage за тебя кто будет создавать,
>  Пушкин что ли ?

Хм... в статье не было этого - сам теорию еще до конца не понимаю..

создал: Msg := TIdMessage.Create; и освободил: Msg.Free

Теперь ругаеться так:
Project <project-name> raised exception class EIdSNTPReplyError with message "".
я чегото совсем запутался.....


 
brother ©   (2008-09-03 10:48) [16]

> объявил

а создавать/уничтожать delphi сама будет?! класс!


 
Palladin ©   (2008-09-03 11:05) [17]


> brother ©   (03.09.08 10:48) [16]

ты глумленья не просек? :)


 
Palladin ©   (2008-09-03 11:05) [18]


> сам теорию еще до конца не понимаю..

эт не теория, это практика, основы самые так сказать... в книжках про них пишут... а демонстрационных проектов у indy - попой кушай... идешь и смотришь


 
brother ©   (2008-09-03 11:06) [19]

> ты глумленья не просек? :)


> класс!

со всем смаком ;)


 
Сергей М. ©   (2008-09-03 11:14) [20]


> EIdSNTPReplyError with message


А где собссно сам текст этого message ?


 
TRSteep ©   (2008-09-03 11:29) [21]


> А где собссно сам текст этого message ?

вот пустой он! "" и все....


 
TRSteep ©   (2008-09-03 11:30) [22]


> эт не теория, это практика, основы самые так сказать...
> в книжках про них пишут... а демонстрационных проектов у
> indy - попой кушай... идешь и смотришь

примеры.... надо посмотреть хоть :)


 
Сергей М. ©   (2008-09-03 11:41) [23]

EMailAddresses is a String property that represents the contents of the collection as a comma-delimited list of email addresses in RFC 2822-compliant form


 
TRSteep ©   (2008-09-03 12:03) [24]

вылтает здесь
if IdSMTP.Connected=True then  IdSMTP.Send(Msg);
в примерах - только прием почты...


> EMailAddresses is a String property that represents the
> contents of the collection as a comma-delimited list of
> email addresses in RFC 2822-compliant form

у меня же только один ящик.... его вроде не нажно разделять запятыми....?


 
brother ©   (2008-09-03 12:06) [25]

> IdSMTP

дык это и есть прием, отправка по POP3 )


 
TRSteep ©   (2008-09-03 12:16) [26]

ой всмысле наоборот отправка... :)))


 
brother ©   (2008-09-03 12:20) [27]

брррр, запутал), SMTP - отправка, POP3 - прием)


 
TRSteep ©   (2008-09-03 12:27) [28]

оказалось дело было не в бабине :)
вобщем во From.Address:="...@yandex.ru";//указываем автора письма
указал с ошибкой - как переправил - все ушло - правда заголовок не правильно прочитался- но это уже другая история :)))

Всем спасибо за советы и помощь!



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

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

Наверх





Память: 0.51 MB
Время: 0.047 c
3-1207905476
Новичек
2008-04-11 13:17
2008.10.12
Поля BOLLEAN в FireBird


2-1220412679
Татьяна
2008-09-03 07:31
2008.10.12
Операции с таблицами БД


15-1219566032
@!!ex
2008-08-24 12:20
2008.10.12
Как правильно?


15-1219145496
keymaster
2008-08-19 15:31
2008.10.12
Как правильнее?


15-1219090059
Alien1769
2008-08-19 00:07
2008.10.12
pppoe





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский