Клиентские почтовые компоненты Indy TIdSMTP и TIdIMAP4 имеют...

Клиентские почтовые компоненты Indy TIdSMTP и TIdIMAP4 имеют много общих свойств, которые могут устанавливаться в процессе проектирования в окне Инспектора Объектов, или задаваться программно. Свойство Port в обоих компонентах задается по умолчанию (25 в TIdSMTP и 143 в TIdIMAP4), и вред ли стоит менять эти значения. Во всяком случае, надо следить, чтобы разные службы не использовали одинаковые порты.

Свойство Host должно содержать строку с именем или адресом IP почтового сервера, с которым устанавливается связь. Например: "SMTP.online.ru". Если сервер реализован на вашем компьютере с помощью соответствующего серверного компонента, то в качестве значения Host надо задать имя компьютера (например, "MyComputer" или "localhost"), а можно задать адрес: "127.0.0.1".
Свойства Username и Password определяют имя пользователя и пароль, необходимые при соединении с сервером (если они необходимы).

Задание перечисленных свойств – тот минимум, который требуется для соединения с почтовым сервером. Соединение осуществляется методом Connect.В качестве необязательного аргумента в метод может быть передано время ожидания соединения в миллисекундах. В качестве такого аргумента может использоваться также константа IdTimeoutDefault - время ожидания по умолчанию.
Если во время соединения возникли ошибки, генерируется исключение EIdSocketError, которое следует перехватывать.

Закрывается соединение методом Disconnect.
Отправка сообщения в рассматриваемых компонентах осуществляется по-разному. В компоненте TIdSMTP для отправки используется метод Send:

procedure Send(AMsg: TIdMessage);

Параметр AMsg – объект сообщения, в качестве которого может использоваться компонент TIdMessage.
В компоненте TIdIMAP4 для отправки используется метод AppendMsg:

function AppendMsg(const AMBName: String; AMsg: TIdMessage;
const AFlags: TIdMessageFlagsSet = []): Boolean;

Параметр AMBName указывает почтовый ящик, в который пересылается сообщение. Параметр AMsg идентичен описанному выше. А флаги AFlags могут не указываться.

Понравилась статья? Поделиться с друзьями:
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: