| Программирование под linux, программирование, языки программирования, книги программирование | На сайте представлена информация про программирование в Интернете и работу |
|
Сохранение имени файла в базу данных, Как? Вычисляемые поля Как избежать пропадания значка? Hook!, Перехват клавы! Как сделать атрибут для .... создать составной ключ, что не так Сохранение запроса в файл Ошибка при добавлении записи, TQuery как получить ответ sql запроса в преременную, ответ запроса в переменую Name not unique in this context, помогить чтоль... Как Вы относитесь к курящим девушкам? научите пользоватся footer и sumlist (DBGridEh), азы... Как создать при запуске алиас Insert into table2 (из 2.mdb) из Table1 (из 1.mdb), С помощью Delphi и что бы не тормозило.. Элементы окна, как добраться? Пароль для всех, как сделать?, Пароль на запуск программы. Автофильтр, как в MS Excel Пароль к базе данных, База Access, подключение ADO Связь между таблицами, Delphi+ADO+Access Надпись MEMO в ячейках DBGrid Нумерация выборки в DbGrid, С аксесом неполучается никак!!! Как сделать пароль в БД Access Текстовое поле заполняется пробелами, до полного размера Упорядочить данные по полю типа Date, В TTable Лучший DBGrid, Какой лучший DBGrid? Доступ к событиям программно созданого объекта. (FB/IB, IBX) - Ошибка в IBX!, Нашел и исправил Упаковка индексированной таблицы Paradox, как сделать ? Выподающий список Почему Access ругается Странный Tab С помощью делфи подключится MS SQL 7.0, Делфи и MS SQL 7.0 Проблемы с Access, ADOTable2.Delete; KADao и база Access RESTORE DATABASE и TAdo.Connected Мусор на рабочем столе, Как избежать? Сохранить измененные данные в файле! QReport, основы Создание новой базы данных., *.mdb BLOB has been modified. Базу FoxPro не открыть, Базу FoxPro не открыть Вопрос по Блоб - полям!, Извлечение значения через параметры Quer через ADO к InterBase, подключение как обновить Lookup поле Что за ошибка?, Can not retrieve ResultSet data Server, создание собственного сервера Реальные примеры использования FreeReport Пример работы с SMTP, вопрос SQL запрос, Правильный sql запрос Запись графического файла, в прле типа Graphic ADOQuery и DataSource, не видят друг друна Как выбрать и записать общее количество записей из SQL или XML?, что выбрать... Статья Vit'a в FAQ'е, Удивлен, что никто ее не читал... Проблемы с кодировкой BDE Как Вы относитесь к курящим девушкам? Сервисы BDE, какие имеются GUID как с ними работать Работа с реестром..., Помогите, кто может... DBLookUpComboBox, Связывание 2х таких Выделить всю строку в DBGrid изменение данных, из потоков Индексирование таблиц, вопрос чай............... FastReport, Cross-отчет, отчего зависит высота заголовка? SQL-запросы при работе с Access Как максимально уменьшить размер программы?, Как избавиться от лишнего кода? Изменять текст в DBLookupComboBox создание field в таблице Сложная фильтрация, база данных TComboBox.ReadOnly |
Платные хостинги Раскрутка сайта Книги по программированию Пример работы с SMTP, вопрос
- В факах есть пример работы с SMTP, как прикрепить для отправки файл? - Там же, в нашем FAQ есть пример - unit Unit1;interfaceusesWindows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,StdCtrls, ExtCtrls, ComCtrls, Psock, NMsmtp;typeTForm1 = class(TForm) Memo: TRichEdit; Panel1: TPanel; SMTP: TNMSMTP; Panel2: TPanel; FromAddress: TEdit; predefined: TLabel; FromName: TEdit; Subject: TEdit; LocalProgram: TEdit; ReplyTo: TEdit; islog: TCheckBox; Host: TEdit; Port: TEdit; userid: TEdit; Button1: TButton; procedure Button1Click(Sender: TObject);private Procedure CleanContext; procedure PerformConnection; procedure AddMessage(msg:string; color:integer); procedure log(inpt :string); Procedure SetSMTP;public function SendEmail(_to, cc, bcc, Subject, body, attachment:string; HTMLFormat:boolean):boolean;end;varForm1: TForm1;implementation{$R *.DFM}Procedure TForm1.SetSMTP;beginSMTP.Host:=Host.Text;SMTP.Port:=strtoint(Port.text);SMTP.UserID:=userid.text;end;Function GetEmailDateTime:string;var tz:_time_Zone_information; s:string;beginGetTimeZoneInformation(tz);if (tz.Bias*100 div 60)<1000 then s:=format(' -0%d',[tz.Bias*100 div 60])else s:=format(' -%d',[tz.Bias*100 div 60]);result:=formatdatetime('ddd, dd mmm yyyy hh:nn:ss',now)+s;end;Procedure TForm1.CleanContext;{set default values, some of them comes from "Setup" form}beginSMTP.PostMessage.FromAddress:=FromAddress.text;SMTP.PostMessage.FromName:=FromName.text;SMTP.PostMessage.ToAddress.Clear;SMTP.PostMessage.ToCarbonCopy.clear;SMTP.PostMessage.ToBlindCarbonCopy.clear;SMTP.PostMessage.Body.clear;SMTP.PostMessage.Attachments.clear;SMTP.PostMessage.Subject:=Subject.text;SMTP.PostMessage.LocalProgram:=LocalProgram.text;(*Mon, 27 Nov 2000 12:37:46 -0700*)SMTP.PostMessage.Date:=GetEmailDateTime;SMTP.PostMessage.ReplyTo:=ReplyTo.Text;end;procedure TForm1.log(inpt :string);var outf:textfile;begin {writing in the log file}if not islog.checked then exit;assignfile(outf, changefileext(paramstr(0), '.log'));if fileexists(changefileext(paramstr(0), '.log')) then append(outf)else rewrite(outf);writeln(outf, datetimetostr(now)+'|'+inpt);closefile(outf);end;procedure TForm1.AddMessage(msg:string; color:integer);begin {showing in the memo field progress...}while memo.lines.Count>2000 do memo.lines.Delete(0);memo.sellength:=0;memo.selstart:=length(memo.text);memo.selattributes.Color:=Color;memo.seltext:=#13#10+DateTimeTostr(now)+' '+msg;memo.perform($00B7,0,0);Application.ProcessMessages;if color<>clRed then log(DateTimeTostr(now)+' '+msg) else log('Error: '+DateTimeTostr(now)+' '+msg);end;procedure TForm1.PerformConnection;beginwhile (not SMTP.connected) do begin SetSMTP; AddMessage('Connecting to SMTP',clBlue); application.processmessages; try SMTP.Connect; AddMessage('No Errors',clBlue); except on e:exception do AddMessage('Error conection: '+e.message,clBlue); end; end;end;Function TForm1.SendEmail(_to, cc, bcc, Subject, body, attachment:string; HTMLFormat:boolean):boolean;beginPerformConnection;result:=true;CleanContext;try if (attachment<>'') and (not Fileexists(attachment)) then begin AddMessage('Attachment is not ready yet ('+ attachment+') ', clNavy); sleep(300); result:=false; exit; end; SMTP.PostMessage.ToAddress.text:=StringReplace(_to, ';',#13#10, [rfReplaceAll, rfIgnoreCase]); if cc<>'' then SMTP.PostMessage.ToCarbonCopy.text:=StringReplace(cc, ';',#13#10, [rfReplaceAll, rfIgnoreCase]); if bcc<>'' then SMTP.PostMessage.ToBlindCarbonCopy.text:=StringReplace(bcc, ';',#13#10, [rfReplaceAll, rfIgnoreCase]); if Subject<>'' then SMTP.PostMessage.Subject:=Subject; if HTMLFormat then SMTP.SubType:=mtPlain else SMTP.SubType:=mtHtml; SMTP.PostMessage.Body.Text:=Body; if attachment<>'' then SMTP.PostMessage.Attachments.add(attachment); AddMessage('Sending to '+ _to, clGreen); SMTP.SendMail; AddMessage('Complete.'+#13#10, clGreen);except on e:sysutils.exception do begin AddMessage(e.message, clRed); result:=false; end;end;end;procedure TForm1.Button1Click(Sender: TObject);beginSendEmail('nevzorov@yahoo.com', '', '', 'test', 'body', '', False);end;end.Тыкните мне слепому пальцем, плизКак и где сдесь прикрепить для отправки файл - Сорри, я пропустил, кажись...SMTP.PostMessage.Attachments - этот объект ответственнен за прикрепление файлов. Помоему, там это делается простым методом Add... Код у меня на работе, точнее смогу сказать и исправить в FAQ на следующей неделе. - Буду ждать!! - Vit я все равно буду ждать? - Я смогу найти свой код не раньше понедельника-вторника, а почему бы тебе самому не по экспериментировать с объектом "SMTP.PostMessage.Attachments"? Там Help в Дельфи есть, примеры есть, что еще надо? По моему там надо только методом Add добавить файл и всё - у тебя это не получилось? Это не работает? - Чтоб выбрать файлы которые будут отправленны:Добавь компоненты:OpenDialog1buttonListBoxКод procedure TForm1.Button1Click(Sender: TObject);begin If OpenDialog1.Execute then ListBox1.Items.Add(OpenDialog1.FileName);end;highlightSyntax('delphiEyMDIx','delphi');Отправляем с файлами.Код procedure TForm1.Button2Click(Sender: TObject);begin NMSMTP1.PostMessage.FromAddress := 'Admin@lamer.ru'; NMSMTP1.PostMessage.FromName := 'BillGates'; NMSMTP1.PostMessage.Subject := 'make me blou job'; NMSMTP1.PostMessage.ToAddress.Add(Edit1.text);{//Поле едит содержит адрес получателя} NMSMTP1.PostMessage.Attachments.AddStrings(Listbox1.Items);{Вот это тот самый ЛистБокс каторый хранит пути к файлам каторые будут отправленны} NMSMTP1.PostMessage.Body.Assign(Memo1.Lines);{Текст письма} NMSMTP1.SendMail; //Отправляем только если connectedend;highlightSyntax('delphiThkNTgw','delphi'); - Так, выбрал время, посмотрел внимательно на код, ничего там не пропущено - вот строка там есть для прикрепления файла:if attachment<>'' then SMTP.PostMessage.Attachments.add(attachment);А в вызове функции:Function TForm1.SendEmail(_to, cc, bcc, Subject, body, attachment:string; HTMLFormat:boolean):boolean;указываешь имя прикреплённого файла |