JvMail (JEDI) компонент не отправляет почту

Компонент JvMail не работает должным образом, или я что-то напутал.

procedure TForm1.RzURLLabel1Click(Sender: TObject);
begin
if cxLookUpComboBox1.Text ='' then
abort else
with JvMail1.SimpleMAPI do
begin
JvMail1.Clear;
JvMail1.Recipient.AddRecipient('smtp:mymail@gmail.com');
JvMail1.Subject := 'Password lost  ';
JvMail1.Body.Text := 'Request password  :' +#13#10+  cxLookUpComboBox1.Text +#13#10+  AdvOfficeStatusBar1.Panels[4].Text ;
JvMail1.SendMail;
end
end;

Моя почта не будет отправлена, если я не поставлю префикс smtp: напротив почтового адреса. Любые идеи о том, как это исправить?

2 ответа

Решение

Документация для этого ясна

Заметки:

Формат адреса, указанный параметром Address, является [тип адреса][адрес электронной почты]. Примеры допустимых адресов: ФАКС:206-555-1212 и SMTP:M@X.COM.

Описание:

Следующий код добавляет получателя в список получателей: JvMail1.Recipient.AddRecipient('SMTP:someone@somedomain.com', 'Some one');

Я не даю никакого другого решения или объяснения, почему вам нужно добавить smtp, так что не стесняйтесь понизить этот ответ.:)

У вас уже есть обходной путь, поэтому вместо этого я дам несколько реальных советов, как это исправить:

  1. Просто черт возьми smtp: через код, если это то, что нужно
  2. Напишите комментарий TODO, который говорит, что вам нужно выяснить, что здесь происходит
  3. Переходите к следующему заданию

Конечно, если отправка электронной почты действительно не является основой вашего приложения, или если вам действительно нечего делать лучше.

Другие вопросы по тегам