| 
| 
 | Вопрос # 1 400/ вопрос открыт / | 
 |  Приветствую, уважаемые эксперты!У меня такой вот вопрос... При отсылке почты через компонент IdSMTP программа виснет. Как можно избежать этого, например приделать к отсылке ProgressBar...
 
|  |   Вопрос задал: Василий Иванович (статус: Посетитель)Вопрос отправлен: 10 марта 2008, 10:23
 Состояние вопроса: открыт, ответов: 2.
 |  Ответ #1. Отвечает эксперт: Вадим К Здравствуйте, Василий Иванович!Ответ прост - использовать потоки. В случае Indy - это идиологически единственный правильный вариант решения. Это не слишком сложно, чем можно подумать.
 В разделе статьи вы найдёте статью Скачиваем файлы из интернета, где приводиться пример с IdHttp. Материала там достаточно, что бы решить вашу задачу.
 Есть ещё один способ, но более сложный. Сделать отдельное приложение, которое будет скачивать, а вы с ним работать. Но это для особых случаем.
 
|  | Ответ отправил: Вадим К (статус: Академик)Время отправки: 10 марта 2008, 12:48
 Оценка за ответ: 5
 |  Ответ #2. Отвечает эксперт: Feniks Здравствуйте, Василий Иванович!Использование SMTP Relay Server - отсылка письма напрямую минуя любые промежуточные сервера (пример взят из библиотеки Indy). Для отсылки письма с использованием компонентов Indy. Пример для Delphi 7 (скорее всего будет работать и в Delphi 6), для Kylix 3 нужны небольшие исправления для перевода в CLX приложение (сама функциональность та же).
 Пример и форма в Атаче.
 К ответу прикреплён файл. Загрузить » (срок хранения: 60 дней с момента отправки ответа)
 
 
|  | Ответ отправил: Feniks (статус: Бакалавр)Время отправки: 11 марта 2008, 11:22
 
 |  
 Мини-форум вопросаВсего сообщений: 4; последнее сообщение — 11 марта 2008, 23:24; участников в обсуждении: 2. 
|   | Василий Иванович (статус: Посетитель), 10 марта 2008, 12:41 [#1]:И еще: при таком вот коде: uses
 IdAttachment;
 ...
 var
 nam: string;
 Attach: TIdAttachment;
 ...
 Attach:=TIdAttachment.Create(IdMessage1.MessageParts, nam);
 
 Выдает ошибку Too many actual parameters
 Если в uses не прописать IdAttachment, то:
 [Error] Unit1.pas(88): E2003 Undeclared identifier: 'TIdAttachment'
 |  
|   | Вадим К (статус: Академик), 11 марта 2008, 15:45 [#2]:в делфи 6 и 7 используются различные версии инди. а там была значительно переделана архитектура. поэтому нужно смотреть, какие параметры надо. Остановите курсор (текстовый) сразу за открывающейся скобкой и нажмите Ctrl+пробел. делфи подскажет параметры. Галочка "подтверждения прочтения" - вселенское зло. |  
|   | Василий Иванович (статус: Посетитель), 11 марта 2008, 18:59 [#3]:У меня делфи 2005. Версия Инди то ли 9, то ли 10 При открытии скобки (Attach:=TIdAttachment.Create() сразу всплывает хинт Collection: TCollection;
 |  
|   | Вадим К (статус: Академик), 11 марта 2008, 23:24 [#4]:я написал так   Attach:=TIdAttachment.Create(IdMessage1.MessageParts); и всё компилируется. к сожалению, я не знаю, что такое nam, подозреваю, что это имя чего то.смотрите по логике программы. Галочка "подтверждения прочтения" - вселенское зло. |  Чтобы оставлять сообщения в мини-форумах, Вы должны авторизироваться на сайте. |