|
| | |
| Главная » 2011 » Март » 19 » Отправки почты с вложением
21:50 Отправки почты с вложением |
Да помнится было время, когда я очень долго искал информацию о возможности корректной отправки письма с вложениями . Компоненты от Инди (Indy) – это те еще фрукты. С русским языком помню были проблемы и прикрепленные файлы были испорчены или вообще не отсылались.
В этом посте я выкладываю исходники отправки электронной почты (email) для Delphi 7, 2007 , 2009 и 2010.
-:: Для Delphi 2007 ::-
...
type TDummyEncode = class protected class procedure SetCharSet(var VTransferHeader: TTransfer; var VHeaderEncoding: Char; var VCharSet: String); end; { TEncode } class procedure TDummyEncode.SetCharSet(var VTransferHeader: TTransfer; var VHeaderEncoding: Char; var VCharSet: String); begin VCharSet:='windows-1251'; VTransferHeader := bit8; VHeaderEncoding := 'B'; end; procedure TForm1.SendMail(); var Message : TIdMessage; begin IdSMTP1.Host := 'Host'; IdSMTP1.Username :='UserName'; IdSMTP1.Password:='Password'; Message := TIdMessage.Create( nil ); try Date := Now; Body := Memo.Lines; From.Text := 'From'; Recipients.EMailAddresses := 'EMailAddresses '; Subject := 'Subject'; From.Name := 'Name'; From.Address := 'Adress@adr.ru'; OnInitializeISO := TDummyEncode.SetCharSet; TIdAttachmentFile.Create( Message.MessageParts, 'c:\файл.расширение' ); IdSMTP1.Connect; try IdSMTP1.Send(Message); finally IdSMTP1.Disconnect; end; finally FreeAndNil( Message ); end; end; -:: Для Delphi 2009, 2010 ::- ... type TDummyEncode = class protected class procedure SetCharSet(var VHeaderEncoding: Char; var VCharSet: string); end; { TEncode } class procedure TDummyEncode.SetCharSet(var VHeaderEncoding: Char; var VCharSet: string); begin // теперь всегда используем utf8 VCharSet := IdCharsetNames[ idcsUTF_8 ] end; procedure TForm1.SendMail(); var Message : TIdMessage; begin IdSMTP1.Host := 'Host'; IdSMTP1.Username :='UserName'; IdSMTP1.Password:='Password'; Message := TIdMessage.Create( nil ); try Date := Now; Body := Memo.Lines; From.Text := 'From'; Recipients.EMailAddresses := 'EMailAddresses '; Subject := 'Subject'; From.Name := 'Name'; From.Address := 'Adress@adr.ru'; OnInitializeISO := TDummyEncode.SetCharSet; TIdAttachmentFile.Create( Message.MessageParts, 'c:\файл.расширение' ); IdSMTP1.Connect; try IdSMTP1.Send(Message); finally IdSMTP1.Disconnect; end; finally FreeAndNil( Message ); end; end;
В принципе все должно работать и отсылаться
|
Категория: Delphi |
Просмотров: 938 |
Добавил: SeM
| Рейтинг: 1.0/1 |
Добавлять комментарии могут только зарегистрированные пользователи. [ Регистрация | Вход ]
| |
| | |
|
|
| Коменнтарии
| |
Извиняюсь, заработал. Спасибо за урок
Давайте помогу разобраться ? вы хотите что бы когда выбиралась станция сразу начинала проигрывать? скиньте исходник или как лучше связаться с вами?
Нифига не робит... Кто знает как сделать чтобы на жесткий жертвы сохранял.. ISQ 606017777
|
|
|
| Отзывы Фото
| |
6 микр. Красивое место.... Старый музей но щас его перенесли... Фотография под горы Красивое фото!!! |
|
|